美文网首页
Vue 中使用定时器setInterval setTimeout

Vue 中使用定时器setInterval setTimeout

作者: MoustacheYJ | 来源:发表于2019-06-26 18:48 被阅读0次

在Vue 项目的开发中我们会使用到定时器,一下我们以setInterval 为例来讲解一下定时器的用法

setInterval 开发文档

通常情况下在Vue 的项目中我们先定义一个timer,作为等等定时器的变量

实例中的变量

在周期函数mounted中定义定时器的执行函数

效果图

注意这样的写法在Vue的周期中无法实现定时器的效果因为这里存在this的指向问题。我们的setInterval()的第一个参数无法正确获得vue 实例中的方法,我么可以使用箭头函数来调整作用域

效果图

这样我们可以在Vue的对应页面的加载完成之后执行定时器的操作

注意:在页面注销之前要将定时器给注销,不然当你跳转别的页面的时候同样会执行定时器的方法,这样会占用你的资源

注销定时器,可以在beforeDestroy的生命周期中执行clearInterval()销毁定时器

效果图

优化问题:

我们发现了一个问题就是timer的这个变量仅仅只是在我们的两个生命周期中访问到了,但是并没有在其他的地方出现使用,引用尤大大的话将这个timer定义为杂物,同时尤大还提出了我们的建立代码与我们清理代码的是互不相关的,这使得我们比较难于程序化的清理我们建立的所有东西。并且当修改代码的时候往往容易同时清理掉两个部分,这是我们容易忽略的,一下的优化方案:

效果图

相关文章

  • 初识js下的定时器

    定时器 setTimeout、setInterval 定时器的使用方法 setTimeout(fn,1000) ...

  • js定时器

    使用定时器实现倒计时 setInterval()和setTimeout() 区别原文地址 setTimeout()...

  • JS定时器

    定时器 setInterval 与 setTimeout的区别 setInterval setInterval(...

  • 2018-01-18

    vue 中无法清除定时器(延时器) vue中 使用定时器 ,setInterval(). 正常使用, 但是当想...

  • setTimeout和setInterval深入理解

    一、setTimeout和setInterval定时器的参数 setTimeout和setInterval函数用来...

  • 客户端的JavaScript(二)

    setTimeout和setInterval 定时器(计时器) setTimeout和setInterval都是客...

  • VUE中定时器如何使用?

    定时器的创建和使用 定时器的销毁 定时器 setTimeout()方法 和 setInterval() 使用方法相...

  • Javascript定时器中的this指向

    使用js中的定时器(setInterval,setTimeout),很容易会遇到this指向的问题。例如:var ...

  • JavaScript第六天

    定时器(两种) setTimeout() setInterval() setTimeout() 炸弹定时器 开启定...

  • 数组循环定时器

    定时器的写法: setInterval(expression,milliseconds); setTimeout(...

网友评论

      本文标题:Vue 中使用定时器setInterval setTimeout

      本文链接:https://www.haomeiwen.com/subject/hzdhcctx.html