当前位置: 首页 > news >正文

温州服务网站建设西安网站开发公司排行榜

温州服务网站建设,西安网站开发公司排行榜,小程序制作步骤,湘潭做网站价格品牌磐石网络文章目录 一、停止单个定时器二、暂停与恢复定时器三、使用Promise来管理定时器四、使用ES6特性管理定时器五、案例#xff08;定时获取页面列表数据#xff09; 一、停止单个定时器 #在某些情况下#xff0c;我们可能只需要停止单个定时器。 #在JavaScript中#xff0c;我… 文章目录 一、停止单个定时器二、暂停与恢复定时器三、使用Promise来管理定时器四、使用ES6特性管理定时器五、案例定时获取页面列表数据 一、停止单个定时器 #在某些情况下我们可能只需要停止单个定时器。 #在JavaScript中我们可以使用clearTimeout()函数停止一个setTimeout()的定时器 #或者clearInterval()函数停止一个setInterval()的定时器。例如// 创建一个定时器 var timer1 setTimeout(function() {console.log(Hello world!); }, 1000);// 停止定时器 clearTimeout(timer1);#当执行clearTimeout(timer1)时之前创建的定时器就会被停止。 #对于setInterval()的定时器使用clearInterval()的方法也是类似的。 #需要注意的是clearTimeout()和clearInterval()函数都需要传入定时器的ID作为参数。二、暂停与恢复定时器 #除了停止某个特定的定时器之外有时候我们也需要暂停或者恢复所有的定时器。 #我们可以使用更高级的技术比如使用闭包或者对象来控制所有的定时器。例如// 创建一个对象来管理所有的定时器 var timerManager {timers: [],addTimer: function(timer) {this.timers.push(timer);},pauseTimers: function() {for (var i 0; i this.timers.length; i) {clearTimeout(this.timers[i]);}},resumeTimers: function() {for (var i 0; i this.timers.length; i) {this.timers[i] setTimeout(this.timers[i].callback, this.timers[i].interval);}} };// 创建多个定时器 var timer1 {interval: 1000, callback: function() {console.log(Hello world!); }}; var timer2 {interval: 2000, callback: function() {console.log(Goodbye world!); }};// 添加定时器到管理器 timerManager.addTimer(timer1); timerManager.addTimer(timer2);// 暂停定时器 timerManager.pauseTimers();// 恢复定时器 timerManager.resumeTimers();#在此示例中我们使用一个名为timerManager的对象来管理所有的定时器。 #addTimer()方法用于向管理器添加定时器pauseTimers()方法用于暂停所有的定时器resumeTimers()方法用于恢复所有的定时器。 #需要注意的是pauseTimers()方法和resumeTimers()方法都需要遍历定时器数组然后使用clearTimeout()函数来清除之前创建的定时器。三、使用Promise来管理定时器 #使用Promise来管理定时器是一种非常高效的方式。 #我们可以通过创建一个Promise来实现定时器并且使用resolve()和reject()方法来控制定时器的行为。例如// 创建一个函数来包装setTimeout function wait(time) {return new Promise(function(resolve, reject) {setTimeout(resolve, time);}); }// 使用Promise管理定时器 Promise.all([wait(1000), wait(2000)]).then(function() {console.log(Both timers complete!); });#在此示例中我们创建一个名为wait的函数该函数返回一个Promise。 #在这个Promise中我们使用setTimeout函数来实现一个定时器并且使用resolve()方法来告诉Promise当定时器触发时执行resolve()回调函数。 #最后我们使用Promise.all()方法来等待所有的定时器完成并且在完成时触发回调函数。这种方式相比于使用定时器数组进行管理更加简洁和高效。四、使用ES6特性管理定时器 #在ES6及以上版本的JavaScript中我们可以使用更加现代的方式来管理定时器。例如使用Set和箭头函数。// 创建Set来管理定时器 const timers new Set();// 创建多个定时器 const timer1 setTimeout(() {console.log(Hello world!); }, 1000); const timer2 setTimeout(() {console.log(Goodbye world!); }, 2000);// 将定时器添加到Set timers.add(timer1); timers.add(timer2);// 暂停所有的定时器 for (const timer of timers) {clearTimeout(timer); }五、案例定时获取页面列表数据 定时器会生成多个即有多个定时器id需要清除不需要的的定时器菜单没有选中当前页面定时器也不需要 script // 创建Set来管理定时器 const timers new Set();export default {data() {return {}},created() {this.loadData()},watch: {$route: function (val) {if (!val.path.includes(当前页面的path)) {// 暂停所有的定时器for (const timer of timers) { clearTimeout(timer); };}else{this.loadData()}}},beforeDestroy() {// 暂停所有的定时器for (const timer of timers) { clearTimeout(timer); }},methods: {// 获取页面数据loadData() {// 暂停所有的定时器for (const timer of timers) { clearTimeout(timer); }let param { ...xxx }...API(param).then(res {....}).finally(() {let timer setTimeout(() { this.init() }, 10000);// 将定时器添加到Settimers.add(timer);})}, } /script
http://www.hkea.cn/news/14538554/

相关文章:

  • 网站建设來选宙斯站长网站开发包括哪些工作
  • 衡水移动网站建设报价济南免费建站
  • 怎么免费开网站数商云网络科技
  • 长沙公司网站高端网站建设wordpress破解文章密码
  • 辽宁鞍山建设工程信息网站网站创意策划方案
  • 成都建设规划网站济南哪有做网站的
  • 休闲咖啡厅网站开发目标网络公司名字四个字
  • 品牌微信网站建设网络及it维护外包
  • 建设网站的目的饮食类计算机网站开发项目
  • 微信引流推广网站建设挂马网站教程
  • 免费建造网站商城网站建设怎么建设
  • 网站找到后台了 如何破解账号 密码wordpress数据改网址
  • 网站制作和app制作wordpress标题设置方法
  • 邯郸网站建设费用做菠菜网站有没有被骗的
  • 郑州铭功路网站建设企业做什么需要有网站
  • 四川省建设厅的注册中心网站如何做彗聪网站呢
  • 呼和浩特可以做网站的公司免费wordpress 模板
  • 中文域名做的网站综合管理平台系统
  • 深圳seo网站建设顺义青岛网站建设
  • 自己做网站要学前端和后端域名注册备案
  • 手机站建设页面设计感想
  • 代刷网站推广链接快手wordpress生成静态html页面
  • 做网站用那一种语言最好网站 文章 keywords 和主页keywords
  • 建设工程质量管理条例网站vps搭建网站是什么意思
  • 网站建设规划面试技巧建设一个商城网站
  • 补习吧 一家专门做家教的网站个人简历在线填写电子版
  • 企业网站建设参考资料建设厅官网查询
  • 厦门手机网站制作二维码转链接
  • 企业网站的建设与管理论文常用网站推广方式有哪些
  • 企业网站开发是什么集团公司中英文网站模板