Angulajs 定时器使用

时间:2021-01-24 00:20:52

在Angulajs的control中,不能利用 window.setInterval和 setTimeout 来操作定时器,因为这样做,虽然设置定时器会成功,但对$scope中的数据进行设置时,不会自动导致页面数据刷新。

要想数据刷新生效。 需要利用 Angulajs 自带的服务 $Interval, 代码如:

var timer = $interval(function(){

   //定时器调用的函数

}, 1000 , 10);

$interval 的第一个参数是回调函数,第二个参数是定时器的间隔,第三个参数是定时器执行的次数(如果不设置,则一直执行,如果设置为1,只执行一次)。

如果需要中止定时器,可以这样:

$interval.cancel(timer);

实际上这时要取消定时器用 window.clearInterval(timer) 也是可以的。

说明:$interval 要注入进去才能使用.