vue页面(组件)销毁时,哪些东西会自动销毁,哪些需要手动销毁

自动销毁:

1.数据和方法:组件的所有响应式数据和方法都会被销毁,这包括"data"函数中返回的所有属性和在组件中定义的方法
2.侦听器:组件内部使用"watch"创建的侦听器会被自动移除
3.子组件:当前组件的所有子组件也会经历同样的销毁过程
4.事件监听器:如果在组件内部使用"this.$on"等方法绑定的事件监听器,它们通常在组件销毁时会被自动移除,然而,如果在外部(如在"mounted"生命周期钩子中)手动添加到DOM元素上的事件监听器,需要在"beforeDestroy"或"unmounted"生命周期钩子中手动移除它们
5.DOM元素:组件的DOM元素及其子元素会被从文档对象模型中移除
6.指令:自定义指令将调用其"unbind"钩子函数
7.Ref引用:与该组件关联的所有Ref引用将失效

手动销毁

1.全局事件监听器和定时器:window、document、定时器
2.全局状态或单例:vuex、pinia等
3.外部引用:如果该组件被外部变量引用,比如被添加到一个全局数组或对象中,这种引用关系不会自动解除

你可能感兴趣的:(vue.js,javascript,前端)