angularjs定时任务的设置与清除示例

  

人们似乎常常将AngularJS中美元的超时(),美元区间()函数看做是一个内置的,无须在意的函数。但是,如果你忘记了超时()美元区间()的回调函数将会造成非常不好的影响,你可能会因此遇到代码莫名其妙的出现问题,或者无端抛出一个错误甚至是一遍一遍的重复对的你的服务器进行http美元请求这些诡异的情形。管理好你的超时/美元区间定时器的小技巧就是在美元毁坏事件中将它们取消。

  

和JavaScript中原生的setTimeout()以及setInterval()函数不同,AngularJS中美元的超时()函数会返回一个承诺。和其他的承诺一样,你可以绑定美元超时的解决和拒绝时间。然而更重要的是,你可以通过将这个承诺传递给美元timeOut.cancel()方法来取消掉潜在的定时器。

  

设置定时任务,给定时任务起一个名字time_upd,为的是方便清理的时候直接调用名称。

        var timeout_upd=(间隔美元范围。upd_data, 6000);之前      

注意:设置的时候美元区间(fn、时间);第一个参数fn不能写“()”,只能写美元范围。方法名称第。二个参数是定时执行的时间间隔,单位为毫秒。

  

清除定时任务,AngularJS将会在范围中触发美元毁坏事件。这让我们可以有机会来取消任何潜在的定时器。

        范围。在美元(美元毁灭,函数(){   美元interval.cancel (timeout_upd);   })      

我的页面是这种格式的,如下图所示.angularjs在“实时数据监测”这个模块设置了一个定时任务,当我点击菜单栏到别的页面时,默认的这个定时任务还在执行,占用很多资源,所以必须得清除这个定时任务,原生的清除window.clearInterval (timeout_upd);是不管用的,必须用angularjs自带的清除方法,如上代码所示。

  

 angularjs定时任务的设置与清除示例

  

注意:angularjs中设置了定时任务之后,必须清除定时任务,不然angularjs会在离开这个控制器后,仍然会执行这个定时任务。

  

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。

angularjs定时任务的设置与清除示例