2019-03更新

找到了更简单的方法,以setinterval为例,各位自行参考

mounted() {const that = thisconst timer = setInterval(function () {//这里是想轮循的部分
      }}, 4000) // 4000ms = 4s// 通过$once来监听定时器,在beforeDestroy钩子可以被清除。this.$once('hook:beforeDestroy', () => {clearInterval(timer) // 此处的timer即 上文const的 timer
    })}

建议使用这个方法。后文可忽略

--------------VUE项目中遇到一个问题。a.vue 文件中触发setTimeout后,使用按钮跳转至其他页面,快速返回至a.vue页面后 发现定时器仍然在走。

例子:a.vue代码

window.setTimeout(function(){window.location.href = "/serverMonitor?t="+ new Date().getTime();
},5000)

解决办法:

window.setTimeout(function(){if(this && !this._isDestroyed){ //_isDestroyed 组件是否被销毁return; }window.location.href = "/serverMonitor?t="+ new Date().getTime();
},5000)

--------------清除定时器

定时器一般有两个

1、setTimeout();//n毫秒后执行一次

2、setInterval();//每隔n毫秒执行一次

setTimeout()对应的是 clearTimeout(funName);

setInterval()对应的是 clearInterval(funName);

  

<script>var funName1 = setTimeout(function(){return ;},1000);var funName2  = setInterval(function(){return fun2;},1000)//清除Timeout的定时器,传入id(创建定时器时会返回一个id)clearTimeout(funName1 );//清除Interval的定时器,传入id(创建定时器时会返回一个id)clearInterval(funName2  );
//也可以使用return值 来清除
setTimeout(function(){console.log("33");return 33;
},3000);clearTimeout(33);
1
</script>

  

 

转载于:https://www.cnblogs.com/ximiximi-blog/p/7199576.html

清除定时器 和 vue 中遇到的定时器setTimeout setInterval问题相关推荐

  1. vue 中定时器的使用全解

    1.vue使用定时器 在vue中使用定时器,很多情况下,进入和退出vue界面,都没有清除定时器,从而导致有很多定时器一起工作,这样肯定是不行的,接下来就使用当用户进入界面时启用定时器,当用户离开当前界 ...

  2. vue中clearInterval()清除定时器报timeout.close is not a function错误?

    在vue中实现播放音乐时旋转光碟的功能时候使用到了定时器,在暂停播放音乐的时候清除定时器,但是发现报了一个奇怪的错误: 在网上查了一下,发现报错的原因好像是vue中有自己内置的clearInterva ...

  3. 关于vue中如何清除定时器的方法

    一.问题 1.在vue中使用setTimeout定时器的时候,可能会遇到关不掉的情况,会存在明明已经在beforeDestroy和destroyed中设置了定时器清除了,但是有时候没生效,定时器还会继 ...

  4. vue中定时器一般用法,定时器函数传参以及清除定时器

    一.vue中定时器一般用法(举个例子) 显示当前时间, setInterval()方法会每秒执行一次函数,类似手表功能: <template><div class="use ...

  5. vue中如何设置和清除定时器setInterval

    data中生明定时器 方法里使用和清除定时器

  6. vue中通过定时器设置倒计时,5秒倒计时

    前言:有时候,在项目中,我们经常需要设置简单的倒计时功能,这个可以通过定时器来实现. 一.设置div显示倒计时数字 <div class="countCircle">& ...

  7. 解决在JS中阻止定时器“重复”开启问题、Vue中定时器的使用

    1.问题描述 在一些需求开发中.需要设定软件提供服务的时间段(营业时间).这时可以选择定时器来实现.可以选择让定时器每隔一段时间检测当前时间是否在服务时间.到达服务时间.进入服务状态.未到服务时间.进 ...

  8. Vue中使用定时器和随机数

    Vue中使用定时器和随机数,程序示例如下: <!DOCTYPE html> <html lang="en"> <head><meta ch ...

  9. vue中页面缓存后destroyed失效,如何关闭定时器

    场景 页面中设置了定时器,如果组件销毁是没有关闭定时器,他还会一直执行,会非常耗性能,所以需要及时关闭定时器. 关闭定时器 vue项目中,正常情况下,我们在生命周期 destroyed 中关闭即可,一 ...

最新文章

  1. JavaScirpt类型检测函数总结
  2. Java异常知识整理_处理异常时的性能开销
  3. 经典算法刷题笔记pdf
  4. Docker实践(二)镜像
  5. springloaded热加载
  6. Spark-Streaming
  7. Android之Adapter用法总结-(转)
  8. python turtle graphics自动关闭_解决Pycharm调用Turtle时 窗口一闪而过的问题
  9. 阿里优酷视频分类方法???咋理解啊?
  10. 笔记本电脑建立Wifi热点多种方法
  11. linux修改ems密码,HP-UX下EMS的使用说明
  12. 2021微信红包封面免费领取最新攻略 春节免费微信红包封面序列号大全
  13. 如何在mysql验证非负数_MySQL数据库- 要求非负数
  14. 用计算机计算工资的公式,工资、薪金所得个人所得税Excel计算公式(正算)
  15. 重要公告|Moonriver成功续约Kusama平行链插槽租赁期
  16. 【MDCC 2016】iOS开发峰会回顾:实战Coding演示 技术大牛带你起飞
  17. 【进程间通信】Unix domain socket (进程间通信)
  18. SRC挖洞之信息收集篇
  19. 单个java文件中引入jar包
  20. SERC 2013 E Skyscrapers

热门文章

  1. Sqlserver学习研究
  2. 信用卡-可恶的招商银行,可恶的循环利息
  3. 从Java到Ruby——我的最近一次技术转型
  4. 洗点,现金1100G
  5. 【博客项目】—登录验证功能实现( 五)
  6. 报错:Unchecked runtime.lastError:Could not establish connection. Receiving end does not exist.
  7. 前端—每天5道面试题(8)
  8. everything的使用
  9. 基金份额净值估值是什么?
  10. Curie%20Module有什么用