$ interval期间窗口未更新

时间:2019-04-20 21:01:41

标签: javascript angularjs

我正在尝试在$interval中传递一个函数,但是并不是每个参数都在控制台中更新。

Plnkr链接:https://plnkr.co/edit/rXAtMCXcZIV2HdlSiZVX?p=preview

vm.timer = $interval(function(){
  $scope.iterationCount++;
  vm.life.next;
}, $scope.time, $scope.iteration);

以上语句更新$scope.iterationCount,但不更新vm.life.next。后者保持初始状态。

当我这样做时:

vm.timer = $interval(vm.life.next, $scope.time, $scope.iteration);

vm.life.next更新,但是我无法更新$scope.iterationCount

1 个答案:

答案 0 :(得分:0)

如果vm.life.next是更新寿命的函数,则在此处

vm.timer = $interval(vm.life.next, $scope.time, $scope.iteration);

(在间隔内)被调用,但是在这里

vm.timer = $interval(function(){
   $scope.iterationCount++;
   vm.life.next;
}, $scope.time, $scope.iteration);

不是-()丢失。应该是vm.life.next();