Vue2.x與vue3.x生命周期對(duì)比

Vue2.x

你不能使用箭頭函數(shù)來(lái)定義一個(gè)生命周期方法R承臁蹂喻!因?yàn)閠his啥也找不到還報(bào)錯(cuò)惕医!

beforeCreate

在實(shí)例初始化之后浮入,數(shù)據(jù)觀(guān)測(cè) (data observer) 和 event/watcher 事件配置之前執(zhí)行,此時(shí)組件實(shí)例還未創(chuàng)建做粤,通常用于插件開(kāi)發(fā)中執(zhí)行一些初始化任務(wù)浇借。

created

組件實(shí)例已經(jīng)創(chuàng)建完成,并配置了數(shù)據(jù)觀(guān)測(cè) (data observer)怕品,property 和方法的運(yùn)算妇垢,watch/event 事件回調(diào)。但是還沒(méi)有掛載DOM,此階段可用于異步數(shù)據(jù)獲取闯估。

beforeMount

在掛載開(kāi)始之前被調(diào)用:相關(guān)的 render 函數(shù)首次被調(diào)用灼舍。

mounted

組件實(shí)例被掛載后完成,DOM已創(chuàng)建涨薪,此階段可用于訪(fǎng)問(wèn)數(shù)據(jù)和DOM元素骑素,但不會(huì)保證所有子組件都一起被掛載。如果您希望整個(gè)視圖都完成渲染可以在 mounted 內(nèi)部使用 vm.$nextTick

beforeUpdate

數(shù)據(jù)更新前調(diào)用刚夺,可用于獲取更新前的狀態(tài)献丑。可在這里 手動(dòng)移除已經(jīng)添加的事件監(jiān)聽(tīng)器侠姑。

updated

此函數(shù)執(zhí)行的時(shí)候阳距。DOM已經(jīng)更新。

updated 不會(huì)保證所有的子組件也都一起被重繪结借。如果你希望等到整個(gè)視圖都重繪完畢,可以在 updated 里使用 vm.$nextTick

beforeDestroy

實(shí)例銷(xiāo)毀之前調(diào)用卒茬。在這一步船老,實(shí)例仍然完全可用,此時(shí)可以取消定時(shí)器和訂閱事件圃酵。

除了beforeCreate柳畔、created外其他生命周期鉤子函數(shù)在服務(wù)器端渲染期間均不被調(diào)用。

官網(wǎng)大圖鎮(zhèn)樓:


生命周期圖示

Vue3

因?yàn)殂^子函數(shù)們依賴(lài)內(nèi)部的全局狀態(tài)來(lái)定位當(dāng)前的組件實(shí)例郭赐,所以他們只能在 setup() 期間注冊(cè)及使用薪韩。

import { onMounted, onUpdated, onUnmounted } from 'vue'

const MyComponent = {
  setup() {
    onMounted(() => {
      console.log('mounted!')
    })
    onUpdated(() => {
      console.log('updated!')
    })
    onUnmounted(() => {
      console.log('unmounted!')
    })
  },
}

  • 與2.x的對(duì)比(兩個(gè)被替換了,其余的就是改了個(gè)名)
    • beforeCreate捌锭、created由setup()代替俘陷。
    • mounted -> onMounted
    • beforeUpdate -> onBeforeUpdate
    • updated -> onUpdated
    • beforeDestroy -> onBeforeUnmount
    • destroyed -> onUnmounted
    • errorCaptured -> onErrorCaptured
  • 新增了2個(gè)方便調(diào)試 debug 的回調(diào)鉤子(為了不誤導(dǎo)請(qǐng)前往官方文檔

Vue2.x + Composition API 與 Vue3.x

  • 在 Vue2.x + Composition API的環(huán)境下,進(jìn)行兩者鉤子函數(shù)混用時(shí):Vue2.x 的回調(diào)函數(shù)會(huì)相對(duì)先執(zhí)行(例:mounted 先于 onMounted執(zhí)行)

  • 在 Vue3.x 環(huán)境下观谦,為了兼容 Vue2.x 的語(yǔ)法拉盾,全部舊的生命周期函數(shù)獲得保留(除了 beforeDestroy 和 destroyed),生命周期混合使用時(shí):Vue3.x 的生命周期相對(duì)優(yōu)先于 Vue2.x 的執(zhí)行(例:onMounted 先于 mounted 執(zhí)行)豁状。

當(dāng)生命周期混用時(shí)捉偏,主版本的鉤子函數(shù)就會(huì)相對(duì)優(yōu)先執(zhí)行。為了產(chǎn)生不必要的麻煩就不要混用啦泻红。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末夭禽,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子谊路,更是在濱河造成了極大的恐慌讹躯,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評(píng)論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異蜀撑,居然都是意外死亡挤巡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評(píng)論 2 384
  • 文/潘曉璐 我一進(jìn)店門(mén)酷麦,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)矿卑,“玉大人,你說(shuō)我怎么就攤上這事沃饶∧竿ⅲ” “怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 156,674評(píng)論 0 345
  • 文/不壞的土叔 我叫張陵糊肤,是天一觀(guān)的道長(zhǎng)琴昆。 經(jīng)常有香客問(wèn)我,道長(zhǎng)馆揉,這世上最難降的妖魔是什么业舍? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 56,340評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮升酣,結(jié)果婚禮上舷暮,老公的妹妹穿的比我還像新娘。我一直安慰自己噩茄,他們只是感情好下面,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,404評(píng)論 5 384
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著绩聘,像睡著了一般沥割。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上凿菩,一...
    開(kāi)封第一講書(shū)人閱讀 49,749評(píng)論 1 289
  • 那天机杜,我揣著相機(jī)與錄音,去河邊找鬼衅谷。 笑死叉庐,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的会喝。 我是一名探鬼主播陡叠,決...
    沈念sama閱讀 38,902評(píng)論 3 405
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼肢执!你這毒婦竟也來(lái)了枉阵?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,662評(píng)論 0 266
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤预茄,失蹤者是張志新(化名)和其女友劉穎兴溜,沒(méi)想到半個(gè)月后侦厚,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,110評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡拙徽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,451評(píng)論 2 325
  • 正文 我和宋清朗相戀三年刨沦,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片膘怕。...
    茶點(diǎn)故事閱讀 38,577評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡想诅,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出岛心,到底是詐尸還是另有隱情来破,我是刑警寧澤,帶...
    沈念sama閱讀 34,258評(píng)論 4 328
  • 正文 年R本政府宣布忘古,位于F島的核電站徘禁,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏髓堪。R本人自食惡果不足惜送朱,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,848評(píng)論 3 312
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望干旁。 院中可真熱鬧驶沼,春花似錦、人聲如沸疤孕。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,726評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)祭阀。三九已至,卻和暖如春鲜戒,著一層夾襖步出監(jiān)牢的瞬間专控,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,952評(píng)論 1 264
  • 我被黑心中介騙來(lái)泰國(guó)打工遏餐, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留伦腐,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,271評(píng)論 2 360
  • 正文 我出身青樓失都,卻偏偏與公主長(zhǎng)得像柏蘑,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子粹庞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,452評(píng)論 2 348