解决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 相关文章推荐
js关于精确计算和数值格式化以及直接引js文件
Jan 28 Javascript
js实现Select头像选择实时预览代码
Aug 17 Javascript
JavaScript获取URL中参数querystring的方法详解
Oct 11 Javascript
node.js爬虫爬取拉勾网职位信息
Mar 14 Javascript
bootstrap的工具提示实例代码
May 17 Javascript
js实现HTML中Select二级联动的实例
Jan 05 Javascript
vue2 全局变量的设置方法
Mar 09 Javascript
vue中子组件向父组件传递数据的实例代码(实现加减功能)
Apr 20 Javascript
详解写好JS条件语句的5条守则
Feb 28 Javascript
深入了解JavaScript 私有化
May 30 Javascript
es6函数之尾调用优化实例分析
Apr 25 Javascript
ES6中的Javascript解构的实现
Oct 30 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和MySql中计算时间差的方法详解
2015/03/27 PHP
PHP生成json和xml类型接口数据格式
2015/05/17 PHP
Yii2简单实现多语言配置的方法
2016/07/23 PHP
php结合redis高并发下发帖、发微博的实现方法
2016/12/15 PHP
PHP获取路径和目录的方法总结【必看篇】
2017/03/04 PHP
详解Yaf框架PHPUnit集成测试方法
2017/12/27 PHP
asp.net和php的区别点总结
2019/10/10 PHP
使用javascript创建快捷方式的简单实例
2013/08/09 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
jQuery获得内容和属性方法及示例
2013/12/02 Javascript
jquery实现的伪分页效果代码
2015/10/29 Javascript
原生JS实现层叠轮播图
2017/05/17 Javascript
Angular4 ElementRef的应用
2018/02/26 Javascript
vue插件mescroll.js实现移动端上拉加载和下拉刷新
2019/03/07 Javascript
this.$toast() 了解一下?
2019/04/18 Javascript
详解element-ui中表单验证的三种方式
2019/09/18 Javascript
layui点击按钮页面会自动刷新的解决方案
2019/10/25 Javascript
javascript(基于jQuery)实现鼠标获取选中的文字示例【测试可用】
2019/10/26 jQuery
uin-app+mockjs实现本地数据模拟
2020/08/26 Javascript
[03:30]DOTA2完美“圣”典精彩集锦
2016/12/27 DOTA
tornado捕获和处理404错误的方法
2014/02/26 Python
windows下ipython的安装与使用详解
2016/10/20 Python
分享一下如何编写高效且优雅的 Python 代码
2017/09/07 Python
Python一键查找iOS项目中未使用的图片、音频、视频资源
2019/08/12 Python
通过字符串导入 Python 模块的方法详解
2019/10/27 Python
wxPython实现列表增删改查功能
2019/11/19 Python
带你彻底搞懂python操作mysql数据库(cursor游标讲解)
2020/01/06 Python
python实现猜数游戏(保存游戏记录)
2020/06/22 Python
HomeAway的巴西品牌:Alugue Temporada
2018/04/10 全球购物
三星新西兰官网:Samsung新西兰
2019/03/05 全球购物
美德少年事迹材料1000字
2014/08/21 职场文书
2019年大学生学年自我鉴定!
2019/03/25 职场文书
廉政党课工作报告案例
2019/06/21 职场文书
python 提取html文本的方法
2021/05/20 Python
Pygame如何使用精灵和碰撞检测
2021/11/17 Python
Python简易开发之制作计算器
2022/04/28 Python