https://www.cnblogs.com/imsomnus/p/7081033.html

Angular 定时器$timeout$interval,延时调用


1. $timeout

用法如下:$timeout(fn,[delay],[invokeApply]);

fn:一个将被延迟执行的函数。
delay:延迟的时间(毫秒)。
invokeApply:如果设置为false,则跳过脏值检测,否则将调用 $apply

具体使用:
本例是监听服务结合延迟方法执行

var timeout;
$scope.$watch('idNo', function(newVal, oldVal) {if(newVal != oldVal) {if(timeout) {$timeout.cancel(timeout);}timeout = $timeout(function() {$http.get(url).success(function(data) {});}, 800);}
});

2. $interval

用法如下:$interval(fn,delay,[count],[invokeApply],[Pass]);

fn:一个将被反复执行的函数。
delay:每次调用的间隔毫秒数值。
count:循环次数的数值,如果没设置,则无限制循环。
invokeApply:如果设置为false,则避开脏值检查,否则将调用$apply
Pass:函数的附加参数。

  • 实例:
 function hello() {...console.log("hello world");
}
var timer = $interval(function(){function hello() {}
},100);
timer.then(function() {console.log("done");
});

复制代码
以上是每100毫秒执行hello()函数,每执行完一次则调用then函数。
2. 控制循环的次数:var timer = interval(function(),100,10);,参数10则是限制定时器循环10次,若该参数没有定义则表示无数次循环。3.清除interval定时器:通过‘interval.cancle(timer)‘删除interval(function(){},100,10);,参数10则是限制定时器循环10次,若该参数没有定义则表示无数次循环。 3. 清除interval定时器:通过‘interval.cancle(timer)`删除interval(function(),100,10);,参数10则是限制定时器循环10次,若该参数没有定义则表示无数次循环。3.清除interval定时器:通过‘interval.cancle(timer)‘删除interval返回的promise即可清除,而且必须要清除,否则会无限循环。在angular controller中只要开始执行定时任务,只要不清除则会一直执行,无论是否切换到其他的controller和页面,可能会导致不必要的错误。
4. 项目中用到的完整实例:

// 定时器 定时刷新数据

var timer = $interval(function() {hello();//自己定义的每次需要执行的函数,也可以写一些其他的内容},5000
);

前端js-angluar定时刷新器相关推荐

  1. 用Ajax+js+jQuery实现无闪烁定时刷新页面 定时刷新

    本人想在一个JSP页面上显示一个消息模块,这个消息需要定时更新,请问大家如何用Ajax+js+jQuery实现无闪烁定时刷新页面功能.本人使用的js框架是jQuery. 先说思路,那就是在前端用 js ...

  2. vue拦截器刷新登陆页面_Vue + Spring Boot 项目实战(六):前端路由与登录拦截器-Go语言中文社区...

    前言 这一篇主要讲前端路由与登录拦截器的实现.放在一起讲是因为我在开发登录拦截器时因为这个路由的问题遇到了很多坑,花费了很长时间,网上的解决方案都不怎么靠谱,综合了好几种办法才最终成功,其实关于这个部 ...

  3. JS获取当前日期时间并定时刷新

    JS获取当前日期时间 var date = new Date(); date.getYear(); //获取当前年份(2位) date.getFullYear(); //获取完整的年份(4位,2014 ...

  4. 前端局部自动刷新_jQuery实现AJAX定时刷新局部页面实例

    方法一: 局部刷新我们讲述到最多的是ajax 了,当然也可以不使用ajax来刷新页面了,我们可以使用jquery中的append来给指定内容加东西了,当然最实用的还是ajax加载数据了. 例子,定时局 ...

  5. 前端 js实现模糊搜索

    前端 js实现模糊搜索 template <input type="text" v-model="keyWord" @input="fuzzyQ ...

  6. DWR框架--让前端JS代码调用JAVA后端的方法

    目录 1.DWR框架简介 2.使用步骤 2.1.pom.xml导入包 2.2.配置web.xml文件 2.2.1.先了解dwr的jar包(不同版本不一样,需注意) 2.2.2.在web.xml中增加d ...

  7. Vue + Spring Boot 项目实战(七):前端路由与登录拦截器

    文章目录 前言 一.前端路由 二.使用 History 模式 三.后端登录拦截器 3.1. LoginController 3.2. LoginInterceptor 3.3. WebConfigur ...

  8. web前端-JS(DOM、BOM)

    web前端-JS(DOM.BOM) 1. DOM- 操作元素 1.1 获取元素 1.2 事件基础 1.3 操作元素 1.3.1 改变元素的内容 1.3.2 常见元素的属性操作 1.3.3 表单元素的属 ...

  9. 云客Drupal源码分析之前端js中的翻译

    从本主题开始<云客Drupal源码分析>系列将连续发布和前端js相关的内容,如果您对JavaScript还不熟悉或者需要来一次系统性的整理回顾,在此云客为您准备了以下资料: <PHP ...

  10. Web 攻防之业务安全:验证码重复使用 || 前端JS代码实现的验证码 测试.

    Web 攻防之业务安全:不安全验证码 测试. 验证码安全 也可以叫<全自动区分计算机和人类的图灵测试>,是一种区分用户是计算机还是人的共全自动程序.可以防止:恶意破解密码.刷票.论坛灌水. ...

最新文章

  1. 争议中挺进全新里程——中国“超级对撞机”《概念设计报告》发布侧记
  2. python读取文件多行内容-python 逐行读取文件的几种方法
  3. halcon的算子清点: Chapter 6 图标对象操作(Graphics)
  4. rocm平台_痛击NV CUDA!AMD ROCm开放计算平台瓜熟蒂落
  5. scrapy爬取动态网页_scrapy_splash 设置随机请求头
  6. Java和Android中的注解
  7. java 方法 示例_Java语言环境getISOLanguages()方法与示例
  8. SpringBoot + AOP 统一处理日志
  9. HDU1881 毕业bg【0-1背包】
  10. 【Feign源码】保存请求数据的载体--Template
  11. 戴尔Dell笔记本Ins-5510 U盘安装操作系统的方法
  12. 局域网ip扫描工具_IP Scanner局域网IP扫描工具
  13. App平台频频露脸综艺节目 观众到底买账吗?
  14. Baklib分享|知识管理是企业发展的风向标
  15. emoji 原生表情解析成对应表情包png
  16. 简简单单,做自己的视频加密软件
  17. 10Wqps评论中台,如何架构?B站是这么做的!!!
  18. 操作系统:进程间通讯的七种方式
  19. Week15 作业 A - ZJM 与霍格沃兹 HDU - 1880
  20. oracle权限培训,【必看】Oracle用户、权限、角色管理

热门文章

  1. Android开发检测网络是否连接
  2. 根据系统创建文件路径
  3. JS鼠标捕获DIV内选中的坐标和宽高
  4. C++生成随机数:几何分布(geometric distribution)
  5. Ztree 改 节点
  6. 9.运输层(3)---TCP
  7. 27.crontab
  8. 循序渐进之Spring AOP(4) - Introduction
  9. PAT Basic 1056
  10. python 匿名函数 与 重要的内置函数