色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

vue destroy 事件

李中冰2年前11瀏覽0評論

Vue 提供了一系列的生命周期鉤子函數,其中包括 destroy 鉤子函數。當一個組件被銷毀時,會自動調用該組件的 destroy 鉤子函數。

destroy 鉤子函數主要用于清理組件中需要手動清理的變量、定時器、事件綁定等。通常在組件中需要手動添加一些事件監聽器,例如在 mounted 鉤子函數中添加了一個 window 的 resize 事件監聽器,那么在組件被銷毀前需要手動移除該事件監聽器,以避免內存泄漏。

export default {
data () {
return {
screenWidth: window.innerWidth
}
},
mounted () {
window.addEventListener('resize', this.handleResize)
},
destroyed () {
window.removeEventListener('resize', this.handleResize)
},
methods: {
handleResize () {
this.screenWidth = window.innerWidth
}
}
}

在上面的示例中,當組件被銷毀時,需要手動移除 window 的 resize 事件監聽器,否則會造成內存泄漏。

需要注意的是,如果一個組件被其他組件包含,那么當父組件銷毀時,其包含的所有子組件也會被銷毀。因此,在子組件中需要清理的變量、定時器、事件綁定等,可以在父組件的 destroyed 鉤子函數中一并處理。

export default {
destroyed () {
window.removeEventListener('resize', this.handleResize)
clearInterval(this.timer)
}
}

在上面的示例中,當父組件銷毀時,其包含的所有子組件都會被銷毀,因此子組件中需要清理的變量、定時器、事件綁定等可以在父組件的 destroyed 鉤子函數中一并處理。

總之,destroy 鉤子函數在組件被銷毀時會自動調用,用于清理組件中需要手動清理的變量、定時器、事件綁定等,以避免內存泄漏。

上一篇vue deprecate