今天的定时器跟以往的不一样
我这里吧定时器包裹在一个方法里然后在beforeDestory里销毁我这么写的
1 beforeDestroy(){ 2 3 clearInterval(this.trainTimer) 4 }
但是离开页面依旧在,因为trainRotation这个方法不清楚 会被其他地方一直调用,所以得清除这个方法才行。
我看了下$destory()来搞,但是发现也没用,不知道怎么用,看到网上有一种清除定时器的方法是使用$once()来做的,
trainRotation(){ let trainTimer = setInterval(this.setIntervalue, 2000); this.$once('hook:beforeDestroy', () => { clearInterval(trainTimer); trainTimer=null; }) },
this.$once这个方法就监听一次,会自动的在离开页面之前就清除掉定时器,试试效果,真的不错,网上的第一种方法我之前用的,发现根本不适合我这情景,有更好的方法求指教,万分感谢