AngularJS中$interval的用法

在AngularJS中$interval用来处理间歇性处理一些事情。

最常用的是:

var app = angular.module("app",[]);

app.controller("AppCtrl", function($q. $interval){
    var timer = $interval(function(){
        
    },100);
    
    timer.then(success);
    
    function success(){
        console.log("done");
    }
})

以上,每隔100毫秒就做一件事,所有都做完再调用then函数。也就是,$interval提供了回调函数。

是否可以控制做事的次数呢?

--可以的。

var timer = $interval(function(){},100,10);

以上,最后一个实参10就是限制次数。

回调函数除了在所有事情结束后调用,还有什么其它回调函数?

--有的,还包括每次调用事件时的回调函数,和出现错误时的回调函数。

var timer = $interval(function(){},100, 10);

timer.then(success, error, notify);

function success(){
    console.log("done");
}

function error(){
    console.log("error");
}

function notify(){
    console.log("每次都更新");
}

是否可以取消$interval服务呢?

--通过$interval.cancle(timer);

var timer = $interval(function(){},100, 10);

this.cancel = function(){
    $interval.cancel(timer);
}
原文地址:https://www.cnblogs.com/darrenji/p/5176687.html