vue 什么情况下会触发 destroy 钩子?

我的神
  • 966

当代码中执行window.location.reload() 或点击浏览器前进或后退时,vue 不触发 destroy 钩子吗?

回复
阅读 5k
1 个回答
✓ 已被采纳
  1. reload() 是浏览器层面的清理和重建,你可以理解成把这台电脑扔了,买了台新的
  2. 所以 reload() 的时候,基于代码层面的类 onDestroy 钩子都不会触发。可以侦听 beforeunload 事件做一些工作。
  3. 浏览器前进后退现在比较复杂,有些时候会导致浏览器重建,有些不会;一般来说,你在 SPA 里,就不会
  4. Vue destory 钩子主要在组件回收时触发,也就是离开某个页面时,里面的组件被逐个回收,此时触发
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
宣传栏