理解created()、activated()、deactivated()的概念。
created():
在html渲染之前触发,只触发一次。
activated():
在vue当前存在的对象条件下,一进入当前存在的activated()函数页面时,立即触发。可用于初始化页面数据、keepalive缓存组件后,可执行方法。
deactivated():
离开当前组件就执行。
activated()和deactivated():在<keep-alive></keep-alive>包裹的时候才有效
我的情况是:
A和B页面是通过v-if控制哪个显示的
当前存在定时器的B页面,在B页面点击返回,回到A页面的时候,在destroyed()函数中消除定时器是没有问题的,
但是如果是在B页面,点击左侧菜单去其他页面,定时器无法消除,此时就可以在deactivated()函数中进行清除,就可以生效