一扼脐,什么是生命周期:
Vue實(shí)例從創(chuàng)建到銷(xiāo)毀的過(guò)程案训,就是生命周期。就是vue實(shí)例從開(kāi)始創(chuàng)建专筷、初始化數(shù)據(jù)于未、編譯模板撕攒、掛載Dom、渲染→更新→渲染烘浦、卸載等一系列過(guò)程抖坪,在vue生命周期中提供了一系列的生命周期函數(shù),如下圖所示:
二闷叉,生命周期函數(shù):
在某一時(shí)刻會(huì)自動(dòng)執(zhí)行的函數(shù)
1擦俐,beforeCreate:
在vue實(shí)例生成前,初始化后 會(huì)自動(dòng)執(zhí)行的函數(shù)(此時(shí)vue實(shí)例并未完全創(chuàng)建出來(lái))
2,created:
在vue實(shí)例創(chuàng)建完成之后會(huì)自動(dòng)執(zhí)行的函數(shù)(vue實(shí)例創(chuàng)建完成)
示例如下:
打印結(jié)果:
3握侧,beforeMount:
把組件內(nèi)容渲染到頁(yè)面之前自動(dòng)執(zhí)行的函數(shù)(相關(guān)的render函數(shù)首次被調(diào)用)
4蚯瞧,mounted:
把組件內(nèi)容渲染到頁(yè)面之后自動(dòng)執(zhí)行的函數(shù)
示例如下:
打印結(jié)果:下圖beforeMount 被打印 但是組件內(nèi)容未掛載到contentMain節(jié)點(diǎn)下
5嘿期,beforeUpdate:
當(dāng)data中的數(shù)據(jù)發(fā)生變化時(shí)會(huì)自動(dòng)執(zhí)行的函數(shù)
6,updated:
當(dāng)data中的數(shù)據(jù)發(fā)生變化 且頁(yè)面數(shù)據(jù)重新渲染后 會(huì)自動(dòng)執(zhí)行的函數(shù)(在大多數(shù)情況下埋合,避免在此期間更改狀態(tài)备徐,可能會(huì)導(dǎo)致更新無(wú)限循環(huán))
示例如下:
打印結(jié)果:
7,beforeUnmount:
vue實(shí)例銷(xiāo)毀前 自動(dòng)執(zhí)行的函數(shù)(此時(shí)實(shí)例仍然可用)
8甚颂,unmounted:
vue實(shí)例失效 且dom完全銷(xiāo)毀后自動(dòng)執(zhí)行的函數(shù)(此時(shí)所有東西都會(huì)解綁定蜜猾,所有的事件監(jiān)聽(tīng)器會(huì)被移除,子實(shí)例也會(huì)被銷(xiāo)毀)
示例如下:
打印如下: