vue使用setTimeout,离开当前路由setTimeout未销毁的问题解决方法
发布时间:2020-07-21 11:43:38
来源:亿速云
阅读:144
作者:小猪
这篇文章主要讲解了vue使用setTimeout,离开当前路由setTimeout未销毁的问题解决方法,内容清晰明了,对此有兴趣的小伙伴可以学习一下,相信大家阅读完之后会有帮助。
问题:
从第一个页面跳转到第二个页面后,如果停留在第二个页面,定时器还在运行。如果在两个页面之间来回跳转,跳转时间小于定时器的间隔时间时,也会出现重复创建setTimeout的情况。
原因:
当我们刷新页面时,会将当前页面之前创建的setTimeout以及其他定时器都清除掉,但是仅仅是路由切换是不会清除的。
data () {
return {
ct: null
}
},
methods: {
start() {
this.ct= setTimeout( () => {that.countdown(end)}, 1000)
}
end() {
clearTimeout(this.ct); //清除
}
}
setInterval()计时也需要clearInterval()来清除
补充知识:小记VUE下setTimeOut和setInterval遇到的问题
相信大家对着两个函数都陌生,就是一个定时器&#