1.創建
beforeCreate
:這個階段實例已經初始化,只是數據觀察與事件機制尚未形成,不能獲取DOM節點(沒有data,沒有el)
使用場景:因為此時data和methods都拿不到,所以通常在實例以外使用
created
:實例已經創建,仍然不能獲取DOM節點(有data,沒有el)
使用場景:模板渲染成html前調用,此時可以獲取data和methods,so 可以初始化某些屬性值,然后再渲染成視圖,異步操作可以放在這里
2.載入
beforeMount
:是個過渡階段,此時依然獲取不到具體的DOM節點,但是vue掛載的根節點已經創建(有data,有el)
mounted
:數據和DOM都已經被渲染出來了使用場景:模板渲染成html后調用,通常是初始化頁面完成后再對數據和DOM做一些操作,需要操作DOM的方法可以放在這里
beforeUpdate
:檢測到數據更新時,但在DOM更新前執行
updated
:更新結束后執行
使用場景:需要對數據更新做統一處理的;如果需要區分不同的數據更新操作可以使用$nextTick
4.銷毀
beforeDestroy
:當要銷毀vue實例時,在銷毀前執行
destroyed
:銷毀vue實例時執行