beforeCreate
在實(shí)例初始化之后窘茁,數(shù)據(jù)觀測(cè) (data observer) 和 event/watcher 事件配置之前被調(diào)用岖常。
created
在實(shí)例創(chuàng)建完成后被立即調(diào)用坛增。在這一步唆途,實(shí)例已完成以下的配置:數(shù)據(jù)觀測(cè) (data observer)料饥,property 和方法的運(yùn)算姻几,watch/event 事件回調(diào)宜狐。然而,掛載階段還沒(méi)開(kāi)始蛇捌,$el property 目前尚不可用抚恒。
beforeMount
在掛載開(kāi)始之前被調(diào)用:相關(guān)的render函數(shù)首次被調(diào)用
mounted
實(shí)例被掛載后調(diào)用,這時(shí)el被新創(chuàng)建的vm.el也在文檔內(nèi)。
注意mounted不會(huì)保證所有的子組件也都一起被掛載春贸。如果你希望等到整個(gè)視圖都渲染完畢混萝,可以在mounted內(nèi)部使用vm.$nextTick:
mounted: function () {
this.$nextTick(function () {
// 這里面的代碼會(huì)等待所有視圖渲染完畢執(zhí)行
})
}
beforeUpdate
數(shù)據(jù)更新時(shí)調(diào)用,發(fā)生在虛擬DOM打補(bǔ)丁之前萍恕。這里適合在更新之前訪問(wèn)現(xiàn)有的DOM逸嘀,比如手動(dòng)移除已添加的事件監(jiān)聽(tīng)器。
updated
由于數(shù)據(jù)更改導(dǎo)致的虛擬DOM重新渲染和打補(bǔ)丁雄坪,在這之后會(huì)調(diào)用該鉤子厘熟。
當(dāng)這個(gè)鉤子被調(diào)用時(shí),組件 DOM 已經(jīng)更新维哈,所以你現(xiàn)在可以執(zhí)行依賴于 DOM 的操作绳姨。然而在大多數(shù)情況下,你應(yīng)該避免在此期間更改狀態(tài)阔挠。如果要相應(yīng)狀態(tài)改變飘庄,通常最好使用[計(jì)算屬性]或 [watcher]取而代之。
注意 updated
不會(huì)保證所有的子組件也都一起被重繪购撼。如果你希望等到整個(gè)視圖都重繪完畢跪削,可以在 updated
里使用vm.$nextTick:
updated: function () {
this.$nextTick(function () {
// 這里面的代碼會(huì)等待所有視圖重新渲染完畢執(zhí)行
})
}
beforeDestroy
實(shí)例銷(xiāo)毀之前調(diào)用谴仙,在這一步,實(shí)例仍然完全可用碾盐。
destroyed
實(shí)例銷(xiāo)毀后調(diào)用晃跺。該鉤子調(diào)用后,對(duì)應(yīng)vue實(shí)例的所有指令都被解綁毫玖,所有事件監(jiān)聽(tīng)器被移除掀虎,所有的實(shí)例也都被銷(xiāo)毀。