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实现的一个选择中国大学的弹框 (数据、步骤、代码)
Jul 26 Javascript
JQuery中SetTimeOut传参问题探讨
May 10 Javascript
详解Angularjs中的依赖注入
Mar 11 Javascript
easyui取消表单实时验证,提交时统一验证的简单实例
Nov 07 Javascript
JS实现鼠标移上去显示图片或微信二维码
Dec 14 Javascript
概述jQuery中的ajax方法
Dec 16 Javascript
jQuery插件HighCharts绘制2D半圆环图效果示例【附demo源码下载】
Mar 09 Javascript
浅谈Vue.js中ref ($refs)用法举例总结
Dec 19 Javascript
微信小程序登录session的使用
Mar 17 Javascript
js中Generator函数的深入讲解
Apr 07 Javascript
vue+element加入签名效果(移动端可用)
Jun 17 Javascript
Ajax实现局部刷新的方法实例
Mar 31 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
PHP MemCached高级缓存配置图文教程
2010/08/05 PHP
PHP连接SQLServer2005的实现方法(附ntwdblib.dll下载)
2012/07/02 PHP
PHP简单创建压缩图的方法
2016/08/24 PHP
Laravel框架使用Redis的方法详解
2018/05/30 PHP
php中yar框架实例用法讲解
2020/12/27 PHP
jQuery 动画基础教程
2008/12/25 Javascript
TimergliderJS 一个基于jQuery的时间轴插件
2011/12/07 Javascript
IE事件对象(The Internet Explorer Event Object)
2012/06/27 Javascript
基于NodeJS的前后端分离的思考与实践(五)多终端适配
2014/09/26 NodeJs
NodeJS学习笔记之FS文件模块
2015/01/13 NodeJs
javascript计时器详解
2015/02/28 Javascript
js实现千分符和保留几位小数的简单实例
2016/08/01 Javascript
JavaScript仿微博输入框效果(案例分析)
2016/12/06 Javascript
简单实现jQuery多选框功能
2017/01/09 Javascript
jquery拼接ajax 的json和字符串拼接的方法
2017/03/11 Javascript
详解vue与后端数据交互(ajax):vue-resource
2017/03/16 Javascript
jquery将标签元素的高设为屏幕的百分比
2017/04/19 jQuery
Layui table 组件的使用之初始化加载数据、数据刷新表格、传参数
2017/09/11 Javascript
Vue组件通信之Bus的具体使用
2017/12/28 Javascript
AngularJS实时获取并显示密码的方法
2018/02/06 Javascript
为vue-router懒加载时下载js的过程中添加loading提示避免无响应问题
2018/04/03 Javascript
Python正则表达式匹配HTML页面编码
2015/04/08 Python
python分数表示方式和写法
2019/06/26 Python
python lambda表达式(匿名函数)写法解析
2019/09/16 Python
py-charm延长试用期限实例
2019/12/22 Python
Python连接Hadoop数据中遇到的各种坑(汇总)
2020/04/14 Python
不到20行实现Python代码即可制作精美证件照
2020/04/24 Python
python 如何调用 dubbo 接口
2020/09/24 Python
python实现猜拳游戏项目
2020/11/30 Python
Bose美国官网:购买Bose耳机和音箱
2019/03/10 全球购物
人事部岗位职责范本
2014/03/05 职场文书
2015年网络舆情工作总结
2015/07/24 职场文书
《狼王梦》读后感:可怜天下父母心
2019/11/01 职场文书
解决Pytorch半精度浮点型网络训练的问题
2021/05/24 Python
OpenCV-Python 实现两张图片自动拼接成全景图
2021/06/11 Python
ant design charts 获取后端接口数据展示
2022/05/25 Javascript