vue路由事件beforeRouteLeave及组件内定时器的清除方法


Posted in Javascript onSeptember 29, 2018

背景

之前在做ADTS项目的时候,首页是一个实时监测的页面,需要每隔5秒更新一次数据,而业务逻辑上的需要先请求告警列表的接口的,从告警列表中拿到数据再去获取其他的数据,所以我在获取告警列表的方法中增加了一个定时器。

vue路由事件beforeRouteLeave及组件内定时器的清除方法

vue路由事件beforeRouteLeave及组件内定时器的清除方法

最开始我是将定时器声明在组件内部的(由于页面不多,数据关联也不太强,所以项目中没有使用store进行数据管理),后来清除的时候发现无法清除,后来索性声明到window下了。然后在组件内部写了如下代码:

vue路由事件beforeRouteLeave及组件内定时器的清除方法

发现也没能将定时器清除,后来走debug发现根本就没有进到这个方法中去,然后就去问同事有没有遇到过类似的问题。

解决

后来同事建议我将路由离开事件的代码放到配置了路由的界面中,我试了一下,果然好使,定时器成功清除。

总结

vue的beforeRouteEnter和beforeRouteLeave都要写在配置了路由的界面中才能出发,写在界面所调用的组件内部无法触发。

vue如果没有使用store的话设置定时器可以直接声明在window下,便于清除。

以上这篇vue路由事件beforeRouteLeave及组件内定时器的清除方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
jquery remove方法应用详解
Nov 22 Javascript
js中通过split函数分割字符串成数组小例子
Sep 21 Javascript
jQuery调用RESTful WCF示例代码(GET方法/POST方法)
Jan 26 Javascript
使用纯javascript实现经典扫雷游戏
Apr 23 Javascript
jquery实现的蓝色二级导航条效果代码
Aug 24 Javascript
谈谈基于iframe、FormData、FileReader三种无刷新上传文件的方法
Dec 03 Javascript
原生js获取iframe中dom元素--父子页面相互获取对方dom元素的方法
Aug 05 Javascript
基于jQuery实现Tabs选项卡自定义插件
Nov 21 Javascript
AngularJS定时器的使用与移除操作方法【interval与timeout】
Dec 14 Javascript
element form 校验数组每一项实例代码
Oct 10 Javascript
vue 获取元素额外生成的data-v-xxx操作
Sep 09 Javascript
JavaScript阻止事件冒泡的方法
Dec 06 Javascript
在vue中v-bind使用三目运算符绑定class的实例
Sep 29 #Javascript
iview同时验证多个表单问题总结
Sep 29 #Javascript
浅谈关于iview表单验证的问题
Sep 29 #Javascript
Vue路由history模式解决404问题的几种方法
Sep 29 #Javascript
对vue v-if v-else-if v-else 的简单使用详解
Sep 29 #Javascript
vue、react等单页面项目部署到服务器的方法及vue和react的区别
Sep 29 #Javascript
浅谈针对Vue相同路由不同参数的刷新问题
Sep 29 #Javascript
You might like
德劲1102收音机的打理维修案例
2021/03/02 无线电
PHP 高手之路(二)
2006/10/09 PHP
php 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
php 高性能书写
2010/12/11 PHP
MySQL连接数超过限制的解决方法
2011/07/17 PHP
Zend Framework教程之Zend_Db_Table表关联实例详解
2016/03/23 PHP
PHP内存缓存功能memcached示例
2016/10/19 PHP
基于thinkPHP类的插入数据库操作功能示例
2017/01/06 PHP
php与阿里云短信接口接入操作案例分析
2020/05/27 PHP
js中cookie的使用详细分析
2008/05/28 Javascript
让浏览器非阻塞加载javascript的几种方法小结
2011/04/25 Javascript
Javascript改变CSS样式(局部和全局)
2013/12/18 Javascript
基于jQuery倒计时插件实现团购秒杀效果
2016/05/13 Javascript
JS表格组件BootstrapTable行内编辑解决方案x-editable
2016/09/01 Javascript
AngularJS通过ng-route实现基本的路由功能实例详解
2016/12/13 Javascript
详解Vue组件之作用域插槽
2018/11/22 Javascript
关于vue-cli 3配置打包优化要点(推荐)
2019/04/22 Javascript
新手如何快速理解js异步编程
2019/06/24 Javascript
微信小游戏中three.js离屏画布的示例代码
2020/10/12 Javascript
如何在vue中使用kindeditor富文本编辑器
2020/12/19 Vue.js
Python统计列表中的重复项出现的次数的方法
2014/08/18 Python
Python实现字符串格式化的方法小结
2017/02/20 Python
Python中交换两个元素的实现方法
2018/06/29 Python
一文带你了解Python中的字符串是什么
2018/11/20 Python
River Island美国官网:英国高街时尚品牌
2018/09/04 全球购物
世界上最好的旅行夹克:BauBax
2018/12/23 全球购物
季度思想汇报
2014/01/01 职场文书
公务员职业生涯规划书范文  
2014/01/19 职场文书
市场营销求职信范文
2014/02/21 职场文书
请假条范文大全
2014/04/10 职场文书
五水共治捐款倡议书
2014/05/14 职场文书
公民授权委托书
2014/10/15 职场文书
幼儿园见习报告范文
2014/10/30 职场文书
2015年社区工会工作总结
2015/05/26 职场文书
幼儿园老师新年寄语
2015/08/17 职场文书
Pandas 数据编码的十种方法
2022/04/20 Python