解决vue组件销毁之后计时器继续执行的问题


Posted in Javascript onJuly 21, 2020

直接上代码,以下

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

很粗暴的方法,在执行之前看是否被销毁就行,

第二种方法,调用路由组件内的钩子函数beforeRouteLeave

beforeRouteLeave(to,from,next){
clearTimeout(window.timer);
next();
}

补充知识:vue销毁时事件,created和mounted&&activated的区别

我就废话不多说了,大家还是直接看代码吧~

// 关闭当前页面就会销毁监听事件(checkpay)
destroyed() {
 clearInterval(this.checkpay)
}
created()在创建vue对象时,在html渲染之前就触发;但是注意created()只会触发一次; mounted()在html渲染完成之后才会执行的;
 activated()进入当前存在activated()函数的页面时,一进入页面就触发;可用于初始化页面数据等

以上这篇解决vue组件销毁之后计时器继续执行的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Array.slice()与Array.splice()的返回值类型
Oct 09 Javascript
jquery 插件 任意位置浮动固定层
Dec 25 Javascript
javascript错误的认识不用关心内存管理
Dec 15 Javascript
基于JQuery实现滚动到页面底端时自动加载更多信息
Jan 31 Javascript
jQuery表格插件datatables用法总结
Sep 05 Javascript
基于javascript实现图片左右切换效果
Jan 25 Javascript
JQuery用户名校验的具体实现
Mar 18 Javascript
js将json格式的对象拼接成复杂的url参数方法
May 25 Javascript
Swiper实现轮播图效果
Jul 03 Javascript
原生JS写Ajax的请求函数功能
Dec 22 Javascript
Vue数据绑定实例写法
Aug 06 Javascript
layui的数据表格+springmvc实现搜索功能的例子
Sep 28 Javascript
vue 实现setInterval 创建和销毁实例
Jul 21 #Javascript
解决vue.js中settimeout遇到的问题(时间参数短效果不稳定)
Jul 21 #Javascript
Vue清除定时器setInterval优化方案分享
Jul 21 #Javascript
解决vue 使用setTimeout,离开当前路由setTimeout未销毁的问题
Jul 21 #Javascript
JavaScript undefined及null区别实例解析
Jul 21 #Javascript
Vue 解决父组件跳转子路由后当前导航active样式消失问题
Jul 21 #Javascript
Vue切换组件实现返回后不重置数据,保留历史设置操作
Jul 21 #Javascript
You might like
解析PHP可变函数的经典用法
2013/06/20 PHP
PHP的引用详解
2015/02/22 PHP
PHP基于SMTP协议实现邮件发送实例代码
2017/04/27 PHP
php 删除指定文件夹的实例讲解
2017/07/25 PHP
子页向父页传值示例
2013/11/27 Javascript
js校验表单后提交表单的三种方法总结
2014/02/28 Javascript
JavaScript事件 "事件对象"的注意要点
2016/01/14 Javascript
js控制TR的显示隐藏
2016/03/04 Javascript
JavaScript判断数组重复内容的两种方法(推荐)
2016/06/06 Javascript
js倒计时显示实例
2016/12/11 Javascript
图片懒加载插件实例分享(含解析)
2017/01/09 Javascript
详解javascript中对数据格式化的思考
2017/01/23 Javascript
关于不同页面之间实现参数传递的几种方式讨论
2017/02/13 Javascript
JavaScript 中 apply 、call 的详解
2017/03/21 Javascript
JS动态添加的div点击跳转到另一页面实现代码
2017/09/30 Javascript
js实现随机点名系统(实例讲解)
2017/10/18 Javascript
Vue进度条progressbar组件功能
2018/04/17 Javascript
[08:42]DOTA2每周TOP10 精彩击杀集锦vol.2
2014/06/25 DOTA
Python多线程编程(四):使用Lock互斥锁
2015/04/05 Python
Python爬虫框架Scrapy实例代码
2018/03/04 Python
wxpython绘制音频效果
2019/11/18 Python
Python调用graphviz绘制结构化图形网络示例
2019/11/22 Python
python 统计文件中的字符串数目示例
2019/12/24 Python
Django 实现对已存在的model进行更改
2020/03/28 Python
细说NumPy数组的四种乘法的使用
2020/12/18 Python
Farfetch台湾官网:奢侈品牌时尚购物平台
2019/06/17 全球购物
应届生船舶驾驶求职信
2013/10/19 职场文书
教师岗位职责范本
2013/12/29 职场文书
中学生励志演讲稿
2014/04/26 职场文书
抗洪救灾感谢信
2015/01/22 职场文书
开天辟地观后感
2015/06/09 职场文书
2016年“5.12”护士节慰问信
2015/11/30 职场文书
2016年敬老月活动总结
2016/04/05 职场文书
优秀员工演讲稿
2019/06/21 职场文书
MybatisPlus代码生成器的使用方法详解
2021/06/13 Java/Android
开机音效回归! Windows 11重新引入开机铃声
2021/11/21 数码科技