談?wù)剉ue生命周期

以下主要從幾個方面來講:

1.vue的生命周期是什么

2.vue生命周期的在項目中的執(zhí)行順序

3.vue中內(nèi)置的方法 屬性和vue生命周期的運行順序(methods星澳、computed钳宪、data、watch)

4.自己構(gòu)造的方法與vue生命周期的運行順序 如show這些

5.總結(jié)

一、vue的生命周期是什么

vue每個組件都是獨立的沽讹,每個組件都有一個屬于它的生命周期,從一個組件創(chuàng)建、數(shù)據(jù)初始化晃酒、掛載、更新窄绒、銷毀贝次,這就是一個組件所謂的生命周期。在組件中具體的方法有:

? ? beforeCreate

? ? created

? ? beforeMount

? ? mounted

? ? (

? ? ? ? beforeUpdate

? ? ? ? updated

? ? )

? ? beforeDestroy

? ? destroyed

? ? 對應(yīng)的中文就如其字面意思彰导,英文不好的童鞋可以有道翻翻

? ? 好了蛔翅,這里要上圖啦~~~

二、vue生命周期的在項目中的執(zhí)行順序

...

data () {

? ? return {

? ? rendered: false,

}

}

...

1.beforeCeate(){

? ? console.log(this.rendered);? ? // undefined?

}

2.created() {

? ? console.log(this.$el);//undefined

? ? console.log(this.rendered);? // false

}

3.beforeMount() {

? ? console.log(this.$el)位谋;//undefined

}

4.mounted() {

? ? console.log(this.$el);

}

5.beforeDestroty(){

? ? console.log(this.$el);

? ? console.log(this.rendered);

}

6.destroyed() {

? ? console.log(this.$el);

? ? console.log(this.rendered);

}

三山析、vue中內(nèi)置的方法 屬性和vue生命周期的運行順序(methods、computed掏父、data笋轨、watch、props)

? ? 從第一二點可知道data的初始化是在created時已經(jīng)完成數(shù)據(jù)觀測(data observer),并且諸如methods翩腐、computed屬性 props等已經(jīng)初始化鸟款;那問題來了,

data props computed watch methods他們之間的生成順序是什么呢茂卦?

根據(jù)翻看vue源碼可知:

props => methods =>data => computed => watch; 懂了沒

四何什、自己構(gòu)造的方法與vue生命周期的運行順序 如show這些

? ? 往往我們在開發(fā)項目時都經(jīng)常用到 $refs 來直接訪問子組件的方法,但是這樣調(diào)用的時候可能會導(dǎo)致數(shù)據(jù)的延遲滯后的問題等龙,則會出現(xiàn)bug处渣。

解決方法則是推薦采取異步回調(diào)的方法,然后傳參進(jìn)去蛛砰,嚴(yán)格遵守vue的生命周期就可以解決 推薦 es6 的promise罐栈。

示例代碼:

handleAsync () {

? ? return new Promise(resolve=>{

? ? ? const res="";

? ? ? ? resolve(res)

})

}

...

async handleShow() {

? ? await this.handleAsync().then(res=>{

? ? this.$refs.child.show(res);

})

}

...

五、總結(jié)

vue 的生命周期泥畅,總得來說就是實例的創(chuàng)建和銷毀這段時間的一個機制吧荠诬。也是vue框架的數(shù)據(jù)間的交互通信。其實現(xiàn)在看來也沒那么難位仁,但是vue的源碼實現(xiàn)這一套機制那是難得一逼柑贞,涉及到復(fù)雜的算法如diff算法,有興趣的童鞋可以去深入了解一下聂抢。喜歡的童鞋點個贊 啊哈哈钧嘶,又來騙贊啦

作者:Kevin這條街最靚的仔

鏈接:http://www.reibang.com/p/410b6099be69

來源:簡書

簡書著作權(quán)歸作者所有,任何形式的轉(zhuǎn)載都請聯(lián)系作者獲得授權(quán)并注明出處琳疏。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末有决,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子空盼,更是在濱河造成了極大的恐慌书幕,老刑警劉巖,帶你破解...
    沈念sama閱讀 218,607評論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件揽趾,死亡現(xiàn)場離奇詭異台汇,居然都是意外死亡,警方通過查閱死者的電腦和手機但骨,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,239評論 3 395
  • 文/潘曉璐 我一進(jìn)店門励七,熙熙樓的掌柜王于貴愁眉苦臉地迎上來智袭,“玉大人奔缠,你說我怎么就攤上這事『鹨埃” “怎么了校哎?”我有些...
    開封第一講書人閱讀 164,960評論 0 355
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我闷哆,道長腰奋,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,750評論 1 294
  • 正文 為了忘掉前任抱怔,我火速辦了婚禮劣坊,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘屈留。我一直安慰自己局冰,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,764評論 6 392
  • 文/花漫 我一把揭開白布灌危。 她就那樣靜靜地躺著康二,像睡著了一般。 火紅的嫁衣襯著肌膚如雪勇蝙。 梳的紋絲不亂的頭發(fā)上沫勿,一...
    開封第一講書人閱讀 51,604評論 1 305
  • 那天,我揣著相機與錄音味混,去河邊找鬼产雹。 笑死,一個胖子當(dāng)著我的面吹牛惜傲,可吹牛的內(nèi)容都是我干的洽故。 我是一名探鬼主播,決...
    沈念sama閱讀 40,347評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼盗誊,長吁一口氣:“原來是場噩夢啊……” “哼时甚!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起哈踱,我...
    開封第一講書人閱讀 39,253評論 0 276
  • 序言:老撾萬榮一對情侶失蹤荒适,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后开镣,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體刀诬,經(jīng)...
    沈念sama閱讀 45,702評論 1 315
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,893評論 3 336
  • 正文 我和宋清朗相戀三年邪财,在試婚紗的時候發(fā)現(xiàn)自己被綠了陕壹。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 40,015評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡树埠,死狀恐怖糠馆,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情怎憋,我是刑警寧澤又碌,帶...
    沈念sama閱讀 35,734評論 5 346
  • 正文 年R本政府宣布九昧,位于F島的核電站,受9級特大地震影響毕匀,放射性物質(zhì)發(fā)生泄漏铸鹰。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,352評論 3 330
  • 文/蒙蒙 一皂岔、第九天 我趴在偏房一處隱蔽的房頂上張望蹋笼。 院中可真熱鬧,春花似錦躁垛、人聲如沸姓建。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,934評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽速兔。三九已至,卻和暖如春活玲,著一層夾襖步出監(jiān)牢的瞬間涣狗,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,052評論 1 270
  • 我被黑心中介騙來泰國打工舒憾, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留镀钓,地道東北人。 一個月前我還...
    沈念sama閱讀 48,216評論 3 371
  • 正文 我出身青樓镀迂,卻偏偏與公主長得像丁溅,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子探遵,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,969評論 2 355

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