Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 链AngularJS$超时,间隔递减_Javascript_Angularjs - Fatal编程技术网

Javascript 链AngularJS$超时,间隔递减

Javascript 链AngularJS$超时,间隔递减,javascript,angularjs,Javascript,Angularjs,我正在尝试创建一个AngularJS应用程序,它获取一个项目数组,然后在该数组中循环(快速启动,然后减速),直到它到达最后一个项目。它应该模拟车轮的旋转。然而,AngularJS在执行此操作时似乎抛出了一个内部错误 TypeError:undefined不是返回logFn.apply的函数(控制台,args) 我是做错了什么,还是有其他的方法来创造这种行为?我现在写的方式 var timeout = 250; vm.locations = ["A", "B", "C", "D", "E"]; v

我正在尝试创建一个AngularJS应用程序,它获取一个项目数组,然后在该数组中循环(快速启动,然后减速),直到它到达最后一个项目。它应该模拟车轮的旋转。然而,AngularJS在执行此操作时似乎抛出了一个内部错误

TypeError:undefined不是返回logFn.apply的函数(控制台,args)

我是做错了什么,还是有其他的方法来创造这种行为?我现在写的方式

var timeout = 250;
vm.locations = ["A", "B", "C", "D", "E"];
vm.selectedLocation = "N/A";
vm.start = function () {
    getRandomLocation();
};

function getRandomLocation() {
    vm.selectedLocation = vm.locations[Math.floor(Math.random() * vm.locations.length)];
    timeout = timeout * 2;
    if (timeout < 5000) {
        $timeout(getRandomLocation(), timeout);
    } else {
        log(vm.selectedLocation);
    }
}
var超时=250;
vm.locations=[“A”、“B”、“C”、“D”、“E”];
vm.selectedLocation=“不适用”;
vm.start=函数(){
getRandomLocation();
};
函数getRandomLocation(){
vm.selectedLocation=vm.locations[Math.floor(Math.random()*vm.locations.length)];
超时=超时*2;
如果(超时<5000){
$timeout(getRandomLocation(),timeout);
}否则{
日志(vm.selectedLocation);
}
}

您的问题出在您的
日志
调用中-向我们显示您定义
日志
的位置和方式,或将其交换到
控制台。日志
-您还应该将getRandomLocation传递到
$timeout
,而不是调用它,这也可能是一个带有承诺的
循环。解决方案是将getRandomLocation传递到
$timeout
。它应该是
$timeout(getRandomLocation,timeout)是的,我是这么说的,但是你犯的错误不是因为这个。