vue 父子組件生命周期函數(shù)執(zhí)行順序

1. 生命周期函數(shù)

vue 的生命周期大概可以分為8個(gè)階段, 創(chuàng)建前/后痊乾,載入前/后篷就,更新前/后劣像,銷毀前/后;
activated 和 deactivated 是在使用 keep-alive 時(shí)獨(dú)有的

  1. beforeCreate: data和el均未初始化要尔,值為undefined
  2. created: Vue 實(shí)例觀察的數(shù)據(jù)對(duì)象data已經(jīng)配置好势似,已經(jīng)可以得到data的值且data已經(jīng)具有響應(yīng)式,但Vue 實(shí)例使用的根 DOM 元素el還未初始化
  3. beforeMount: 在模板編譯之后,渲染之前觸發(fā);data和el均已經(jīng)初始化推穷,但此時(shí)el并沒有渲染進(jìn)數(shù)據(jù)心包,el的值為“虛擬”的元素節(jié)點(diǎn)
  4. mounted: 此時(shí)el已經(jīng)渲染完成并掛載到實(shí)例上;
  5. beforeUpdate: 數(shù)據(jù)更新時(shí)調(diào)用,發(fā)生在虛擬DOM重新渲染和打補(bǔ)丁之前;可以在該生命周期中進(jìn)一步的更改狀態(tài),不會(huì)觸發(fā)附加的重渲染過程;
  6. updated: 在數(shù)據(jù)改變后,模板改變后觸發(fā); 數(shù)據(jù)更改導(dǎo)致的虛擬DOM重新渲染和打補(bǔ)丁,在這之后調(diào)用該生命周期函數(shù); 調(diào)用該生命周期函數(shù)時(shí),組件DOM已經(jīng)更新,可以執(zhí)行依賴DOM的操作;
  7. activated: 使用 keep-alive 時(shí)調(diào)用
  8. deactivated: 使用 keep-alive 時(shí)調(diào)用
  9. beforeDestroy: 組件卸載前觸發(fā),可以在此時(shí)清理事件,計(jì)時(shí)器或者取消訂閱操作;
  10. destoryed: 實(shí)例銷毀之后調(diào)用; 調(diào)用后, vue實(shí)例指示的所有東西都會(huì)解除綁定,所有的事件監(jiān)聽器會(huì)被一處,所有的子實(shí)例也會(huì)被銷毀;

2. 父子組件初始化時(shí) 生命周期的執(zhí)行順序

父beforeCreate -> 父created -> 父beforeMount -> 子beforeCreate -> 子created -> 子beforeMount -> 子mounted->父mounted

3. 父子組件數(shù)據(jù)更新時(shí) 生命周期的執(zhí)行順序

父beforeUpdate -> 子beforeUpdate -> 子updated -> 父updated

4. 父子組件銷毀時(shí) 生命周期的執(zhí)行順序

父beforeDestroy -> 子beforeDestroy -> 子destroyed -> 父destroyed

5. 常見問題

case1: 當(dāng)子組件渲染的數(shù)據(jù) 是從父組件中調(diào)用接口獲得數(shù)據(jù),然后通過父子組件傳值的方式傳遞到子組件渲染頁面 頁面渲染可能會(huì)出現(xiàn)問題;

分析: 接口調(diào)用為異步請(qǐng)求, 可能會(huì)出現(xiàn)子組件已經(jīng)展示,但接口數(shù)據(jù)未返回的情況,造成頁面展示異常;

解決方式:
方案一: 在子組件展示的時(shí)候加上判斷條件 v-if = '接口返回?cái)?shù)據(jù)'; 即有數(shù)據(jù)的時(shí)候,展示子組件; 這樣就會(huì)形成天然的阻塞; 在父組件的生命周期函數(shù)中created/ mounted中的請(qǐng)求返回?cái)?shù)據(jù)后,才會(huì)執(zhí)行子組件的created, mounted;最后執(zhí)行父組件的mounted;
方案二: 在子組件中添加watch監(jiān)聽, 父組件獲取到值得時(shí)候, 就會(huì)觸發(fā)watch監(jiān)聽, 從而實(shí)現(xiàn)重新渲染子組件

  • 方案一 代碼示例
<div class="fa-con">
    <children v-if="resData" :resData="resData" ></children>
</div>
  • 方案二 代碼示例
watch:{
    data:{
      deep:true,
      handler() {
        this.$nextTick(() => {
          this.data = resData
        })
      }
    },
}
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市馒铃,隨后出現(xiàn)的幾起案子蟹腾,更是在濱河造成了極大的恐慌痕惋,老刑警劉巖,帶你破解...
    沈念sama閱讀 221,635評(píng)論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件娃殖,死亡現(xiàn)場離奇詭異值戳,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)炉爆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,543評(píng)論 3 399
  • 文/潘曉璐 我一進(jìn)店門堕虹,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人芬首,你說我怎么就攤上這事赴捞。” “怎么了郁稍?”我有些...
    開封第一講書人閱讀 168,083評(píng)論 0 360
  • 文/不壞的土叔 我叫張陵赦政,是天一觀的道長。 經(jīng)常有香客問我耀怜,道長恢着,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 59,640評(píng)論 1 296
  • 正文 為了忘掉前任封寞,我火速辦了婚禮然评,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘狈究。我一直安慰自己碗淌,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 68,640評(píng)論 6 397
  • 文/花漫 我一把揭開白布抖锥。 她就那樣靜靜地躺著亿眠,像睡著了一般。 火紅的嫁衣襯著肌膚如雪磅废。 梳的紋絲不亂的頭發(fā)上纳像,一...
    開封第一講書人閱讀 52,262評(píng)論 1 308
  • 那天,我揣著相機(jī)與錄音拯勉,去河邊找鬼竟趾。 笑死,一個(gè)胖子當(dāng)著我的面吹牛宫峦,可吹牛的內(nèi)容都是我干的岔帽。 我是一名探鬼主播,決...
    沈念sama閱讀 40,833評(píng)論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼导绷,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼犀勒!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,736評(píng)論 0 276
  • 序言:老撾萬榮一對(duì)情侶失蹤贾费,失蹤者是張志新(化名)和其女友劉穎钦购,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體褂萧,經(jīng)...
    沈念sama閱讀 46,280評(píng)論 1 319
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡押桃,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,369評(píng)論 3 340
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了箱玷。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片怨规。...
    茶點(diǎn)故事閱讀 40,503評(píng)論 1 352
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡陌宿,死狀恐怖锡足,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情壳坪,我是刑警寧澤舶得,帶...
    沈念sama閱讀 36,185評(píng)論 5 350
  • 正文 年R本政府宣布,位于F島的核電站爽蝴,受9級(jí)特大地震影響沐批,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜蝎亚,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,870評(píng)論 3 333
  • 文/蒙蒙 一九孩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧发框,春花似錦躺彬、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,340評(píng)論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至铣减,卻和暖如春她君,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背葫哗。 一陣腳步聲響...
    開封第一講書人閱讀 33,460評(píng)論 1 272
  • 我被黑心中介騙來泰國打工缔刹, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人劣针。 一個(gè)月前我還...
    沈念sama閱讀 48,909評(píng)論 3 376
  • 正文 我出身青樓校镐,卻偏偏與公主長得像,于是被迫代替她去往敵國和親酿秸。 傳聞我的和親對(duì)象是個(gè)殘疾皇子灭翔,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,512評(píng)論 2 359

推薦閱讀更多精彩內(nèi)容