项目中碰到的问题。
组件A
页面一加载,执行一个定时器,往控制台打印1
created:function() {
this.t = window.setInterval(this.cons,1000)
},
methods:{
cons () {
console.log(1)
}
}
组件A能跳转到组件B,使用router-link 完成跳转。
此时在B组件页面中发现,原A组件的定时器依然在执行。
网上找到了方法,给A组件添加销毁前的钩子函数,在A组件销毁前关闭掉定时器
beforeDestroy () {
clearInterval(this.t)
}
这里就引发了一个问题。
路由跳转发生后,上一个组件会被销毁。原有的组件都销毁了,为什么原组件中的定时器没有被清除掉呢?大家可以讨论下。