vue-生命周期(鈎子函數)
new Vue()執行個體對象,下一步進入 beforCreate
狀态:當使用new Vue()建立對象之前,執行的事件
這裡可以做加載動畫
下一步,進入 created
狀态:Vue執行個體已建立完畢,data屬性也綁定完了,但是DOM還沒有渲染生成
這裡可以擷取一些屬性,進行指派;結束上一階段的loading加載
然後,他會檢測是否有 el 屬性,如果有在檢測 template 屬性類型,是一段渲染的函數還是一段html代碼。
然後就進入了 beforeMount 狀态
如果沒有 el 屬性,就會檢測是否有 vm.$mount(el) 屬性
如果都沒有,渲染階段結束 跳過 beforeMount 和 mount 狀态
進入 beforeMount 狀态
狀态:開始編譯目前模闆,編譯template模闆。開始将 el 替換為 template 的内容
此時虛拟Dom已經配置,但頁面仍未展示
然後将 el 挂載完畢之後,進入 mounted 狀态
狀态:當 mounted 方法一旦結束,頁面就會被渲染出來
如果有想要的頁面顯示出來之後,就可以寫到 mounted 方法裡
頁面渲染完畢之後,元件也會進行一些更新操作,比如增删改查。
這時候就會調用 beforeUpdate 和 updated 方法
beforeUpdate
狀态:元件更新之前,頁面仍未更新,但虛拟Dom已經配置
updated
狀态:元件更新完畢,此方法執行完畢後,頁面顯示
對元件進行改變的話,一般在 updated 中進行
最後進入,生命周期的尾部 beforeDestroy 和 destroyed
beforeDestroy
狀态:vue執行個體銷毀之前
destroyed
狀态:vue執行個體銷毀之後