AngularJS定时器的使用与移除操作方法【interval与timeout】


Posted in Javascript onDecember 14, 2016

本文实例讲述了AngularJS定时器的使用与移除操作方法。分享给大家供大家参考,具体如下:

1.相比较于JS中setTimeInterval和setTimeout,AngularJS中通过interval来实现定时器的效果,通过timeout来实现时间延迟。

$timeout //实现的是延迟执行
$interval //实现的是定时器的效果

我们分别来看这两个服务

(1)timeout

timeout相当于JS原生里面的延迟执行,不同的是该服务的函数返回的是一个promise对象。

var timer=$timeout(function(){
   console.log('hello world')
},2000);  //该函数延迟2秒执行
timer.then(function(){ console.log('创建成功')},
function(){ console.log('创建不成功')};

(2)interval

interval与timeout服务大同小异,创建定时器返回的也是一个promise对象。

var timer=$interval(function(){
   console.log('hello world')
},2000);  //间隔2秒定时执行
timer.then(function(){ console.log('创建成功')},
function(){ console.log('创建不成功')};

2.如何移除定时器

在angularJSo中,特别是在页面切换或者说是路由切换的时候,我们需要移除响应的定时器,我们可以通过on方法,监听路由切换时间。当DOM结构发生变化时,会执行on方法:

$scope.$on('destroy',function(){
  $interval.cancel($scope.timer);
}) //在控制器里,添加$on函数

希望本文所述对大家AngularJS程序设计有所帮助。

Javascript 相关文章推荐
innerHTML,outerHTML,innerTEXT三者之间的区别
Jan 28 Javascript
关于textarea提交的内容无法换行的解决办法
Apr 09 Javascript
JS+CSS实现一个气泡提示框
Aug 18 Javascript
jQuery中live()方法用法实例
Jan 19 Javascript
Javascript实现可旋转的圆圈实例代码
Aug 04 Javascript
12种JavaScript常用的MVC框架比较分析
Nov 16 Javascript
JS中常用的输出方式(五种)
Jun 12 Javascript
浅谈js图片前端预览之filereader和window.URL.createObjectURL
Jun 30 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
Aug 18 Javascript
AngularJS实现与Java Web服务器交互操作示例【附demo源码下载】
Nov 02 Javascript
jQuery实现朋友圈查看图片
Sep 11 jQuery
详解vue 中 scoped 样式作用域的规则
Sep 14 Javascript
本地Bootstrap文件字体图标引入却无法显示问题的解决方法
Apr 18 #Javascript
微信小程序中使元素占满整个屏幕高度实现方法
Dec 14 #Javascript
AngularJS基于ngInfiniteScroll实现下拉滚动加载的方法
Dec 14 #Javascript
bootstrap modal弹出框的垂直居中
Dec 14 #Javascript
微信小程序 免费SSL证书https、TLS版本问题的解决办法
Dec 14 #Javascript
微信小程序 wx.uploadFile在安卓手机上面the same task is working问题解决
Dec 14 #Javascript
bootstrap模态框实现拖拽效果
Dec 14 #Javascript
You might like
PHP引用符&的用法详细解析
2013/08/22 PHP
制作安全性高的PHP网站的几个实用要点
2014/12/30 PHP
如何使用php脚本给html中引用的js和css路径打上版本号
2015/11/18 PHP
PHP5.6读写excel表格文件操作示例
2019/02/26 PHP
超级有用的13个基于jQuery的内容滚动插件和教程
2011/07/31 Javascript
jquery中append()与appendto()用法分析
2014/11/14 Javascript
jQuery无刷新切换主题皮肤实例讲解
2015/10/21 Javascript
JavaScript优化专题之Loading and Execution加载和运行
2016/01/20 Javascript
通过扫描二维码打开app的实现代码
2016/11/10 Javascript
在微信小程序里使用watch和computed的方法
2018/08/02 Javascript
微信小程序左滑删除功能开发案例详解
2018/11/12 Javascript
详解Angular中实现自定义组件的双向绑定的两种方法
2018/11/23 Javascript
jquery实现自定义树形表格的方法【自定义树形结构table】
2019/07/12 jQuery
jquery实现下载图片功能
2019/07/18 jQuery
JavaScript 空间坐标的使用
2020/08/19 Javascript
[02:42]完美大师赛主赛事淘汰赛第三日观众采访
2017/11/25 DOTA
[08:56]DOTA2-DPC中国联赛2月23日Recap集锦
2021/03/11 DOTA
Python查找相似单词的方法
2015/03/05 Python
Python实现的科学计算器功能示例
2017/08/04 Python
python交易记录链的实现过程详解
2019/07/03 Python
Python 日期区间处理 (本周本月上周上月...)
2019/08/08 Python
使用tensorboard可视化loss和acc的实例
2020/01/21 Python
python随机模块random使用方法详解
2020/02/14 Python
tensorflow从ckpt和从.pb文件读取变量的值方式
2020/05/26 Python
python字典key不能是可以是啥类型
2020/08/04 Python
python中time包实例详解
2021/02/02 Python
SmartBuyGlasses英国:购买太阳镜和眼镜
2018/01/29 全球购物
英国灯具和灯泡网上商店:Lights.co.uk
2018/02/02 全球购物
Myprotein台湾官方网站:全球领先的运动营养品牌
2018/12/10 全球购物
牵手50香港:专为黄金岁月的单身人士而设的交友网站
2020/08/14 全球购物
采购类个人求职的自我评价
2014/02/18 职场文书
学习雷锋做美德少年寄语大全
2014/04/09 职场文书
环保倡议书
2014/04/14 职场文书
幼儿教师2014年度工作总结
2014/12/16 职场文书
优秀少先队员事迹材料
2014/12/24 职场文书
Html分层的box-shadow效果的示例代码
2021/03/30 HTML / CSS