1. 程式人生 > >個人理解的VueJS生命週期以及其中鉤子函式的實際應用

個人理解的VueJS生命週期以及其中鉤子函式的實際應用

朋友你好!很幸運的,我的文章能夠被你看到,那麼此時你應該想對vuejs的生命週期有更為通俗的理解,以及想知道其中某些鉤子函式在實際開發中的應用場景,下面直接看圖吧。


1.vue的生命週期

簡單的說生命週期就是事物從產生到消失的一個時間過程。那麼vue的生命週期就是從其被建立到銷燬的過程,其中包含了開始建立、初始化資料、編譯模板、掛載dom(渲染) ,渲染->更新->渲染、銷燬(解除安裝)等一系列過程。

那麼其中的鉤子函式都擔負著自己的職責,較為常用的就是created和mounted函式,可以在函式中編寫相關的業務邏輯。

2.鉤子函式

beforeCreate

在例項初始化之後,資料觀測和事件、生命週期初始化配置之前被呼叫。

created

例項已經建立完成之後被呼叫。在這一步,例項已完成以下的配置:資料觀測,屬性和方法的運算,事件回撥。然而,掛載階段還沒開始,$el 屬性目前不可見

beforeMount

在掛載開始之前被呼叫:相關的 render 函式首次被呼叫,此時有了虛擬DOM

mounted

el 被新建立的 vm.$el 替換,並掛載到例項上去之後呼叫該鉤子,渲染為真實DOM

beforeUpdate

在資料更新之前時呼叫,發生在虛擬 DOM 重新渲染和打補丁之前。 你可以在這個鉤子中進一步地更改狀態,這不會觸發附加的重渲染過程。

updated

由於資料更改導致的虛擬 DOM 重新渲染和打補丁,在這之後會呼叫該鉤子。

當這個鉤子被呼叫時,元件 DOM 已經更新,所以你現在可以執行依賴於 DOM 的操作。然而在大多數情況下,你應該避免在此期間更改狀態,因為這可能會導致更新無限迴圈。

值得注意的是:該鉤子在伺服器端渲染期間不被呼叫

beforeDestroy

例項銷燬之前呼叫。此時,例項仍然是可用的。

destroyed

vue 例項銷燬後呼叫。呼叫後,vue 例項指示的所有東西都會解綁,所有的事件監聽器會被解除安裝移除,所有的子例項也會被銷燬。 

值得注意的是:該鉤子在伺服器端渲染期間不被呼叫

以上是個人對vue生命週期一些理解和總結,希望對你有所幫助!!!