vue3的生命週期:1、beforeCreate;2、created;3、beforeMount;4、mounted;5、beforeUpdate;6、updated;7、beforeDestroy;8、destroyed;9、activated;10、deactivated ;11、errorCaptured;12、getDerivedStateFromProps等。
Vue 3 引入了新的生命週期鉤子函數,並對一些舊的鉤子函數進行了重構或刪除。以下是一些Vue 3 的生命週期鉤子函數:
1、beforeCreate:在實例建立之前調用,此時還沒有掛載,資料觀測(data observer) 和事件尚未初始化。
2、created:實例建立完成後調用,此時已經完成了資料觀測 (data observer) 和事件初始化,但尚未掛載 DOM。
3、beforeMount:在掛載之前調用,相關的 render 函數首次被調用。可以在此時對模板進行編譯和渲染。
4、mounted:實例已經掛載到 DOM 上後呼叫。在這個時候,所有的 el 和 ref 都已經被解析,並且 $refs 已經被填滿。
5、beforeUpdate:資料更新時調用,發生在虛擬 DOM 打補丁之前。可以在此時進行狀態更新或手動變更 DOM。
6、updated:資料更新完成後調用,發生在虛擬 DOM 打補丁和 DOM 更新之後。
7、beforeDestroy:實例銷毀之前呼叫。在這個階段,實例仍然完全可用。
8、destroyed:實例銷毀後呼叫。呼叫後,所有的事件監聽器和子元件都將被移除,所有的子元件的 destroyed 鉤子也會被呼叫。
9、activated:當被啟動的 keep-alive 元件重新進入時呼叫。
10、deactivated:當被啟動的 keep-alive 元件離開時呼叫。
11、errorCaptured:在擷取階段處理錯誤時呼叫。如果這個鉤子沒有回傳值,或回傳 false,那麼父元件的 errorCaptured 鉤子就會被繼續呼叫;否則,該錯誤不會被進一步處理。
12、getDerivedStateFromProps:在每次渲染之前都會調用,用於從 props 派生出狀態。這是一個靜態方法,可以在元件建立之前或在元件銷毀之後進行變更。
13、renderTracked 和 renderTriggered:這兩個鉤子是在渲染過程中觸發的,前者在追蹤渲染時觸發,後者在強制觸發渲染時觸發。
14、setup:在 Vue 3 中,元件選項 API 被 Composition API 取代。 setup 函數是 Composition API 的入口點,用於組織和重複使用元件邏輯。它是一個新的、更強大、更靈活的方式來定義元件選項。
以上就是 Vue 3 的生命週期鉤子函數。需要注意的是,由於 Vue 3 對底層進行了大量最佳化,因此一些舊的鉤子函數(如 init、ready 等)已移除或合併到其他鉤子函數中。同時,Vue 3 也新增了一些用於最佳化效能和錯誤處理的鉤子函數,如 activated、deactivated、errorCaptured 等。
以上是vue3的生命週期有哪些的詳細內容。更多資訊請關注PHP中文網其他相關文章!