對於vue的生命周期,官方文檔上並沒有太多的文字性說明,把自己對生命周期和鈎子函數的理解記錄下來
官方文檔

自己的理解
vue生命周期的概念:vue對象從被創建,到執行邏輯,最后到被銷毀的過程。
具體流程:
1)vue實例的創建
2)初始化事件和生命周期
3)初始化data和methods
4)生成虛擬dom $el(將沒有解析的指令的dom加載到內存中)
5)使用$el 來替代el,並且將$el中的指令進行解析
6)進行狀態mounted的循環
判斷data中的數據是否發生改變,如果改變,則跟新虛擬dom 並且重新渲染,重新進入mounted狀態
7)vue實例的銷毀
鈎子函數的概念:vue為我們准備的空函數,函數中的內容可以融入到生命周期中,通俗的來說,就是vue執行生命周期的過程中,有很多的邏輯代碼,將來有可能有需求:在某一段邏輯代碼中添加自己的代碼,為了解決這一問題。
函數:
1)在初始化data和methods時執行
之前:beforeCreate
之后:Created(重點)
2)在使用虛擬dom替換el時執行
之前:beforeMount
之后:mounted(重點)
3)當數據發生改變時,重新渲染虛擬dom時執行
之前:beforeUpdated
之后:updated
4)當調用$destory方法時執行($destory銷毀vue實例)
之前:beforeDestroy
之后:destroy
總結:
將生命周期和其對應的鈎子函數對應的記憶,可以更容易的理解vue的生命周期
