浏览器刷新vue为什么不会走beforeDestroy和destroyed生命周期

业务场景:

需要在页面卸载的时候去处理一些数据,比如清空 localStorage
然后就会把一些业务逻辑写在beforeDestroy或者destroyed的生命周期里

浏览器刷新的时候会走这两个生命周期吗

答案是不会
不是说在组件卸载的时候会走这两个生命周期么,为什么不会走呢?

浏览器刷新是做了些什么

浏览器的刷新其实相当于重新访问这个ip地址,包括html和js,css文件都会重新获取(这里会涉及到文件缓存的问题,但与vue的生命周期没有关系)
浏览器不在乎你之前的页面是什么,相当于把你之前的页面给关了再打开(直接拉闸再接电)

这种情况怎么处理

可以在页面加载的时候添加一个监听事件去监听浏览器刷新,关闭,这样就可以在浏览器刷新或者关闭的时候也能处理对应的业务逻辑

重温vue生命周期

在这里插入图片描述

Logo

前往低代码交流专区

更多推荐