八大生命周期vue 一直搞不懂vue中的生命周期,怎么才能搞清楚?
一直搞不懂vue中的生命周期,怎么才能搞清楚?vue官網(wǎng)說(shuō),“你暫時(shí)不用搞清楚這些...",我覺(jué)得你既然準(zhǔn)備用vue做開(kāi)發(fā)的,不搞懂搞透它,你以后會(huì)發(fā)現(xiàn)踩的坑終究還是有它引起的,等以后再來(lái)補(bǔ)坑,不如現(xiàn)
一直搞不懂vue中的生命周期,怎么才能搞清楚?
vue官網(wǎng)說(shuō),“你暫時(shí)不用搞清楚這些...",我覺(jué)得你既然準(zhǔn)備用vue做開(kāi)發(fā)的,不搞懂搞透它,你以后會(huì)發(fā)現(xiàn)踩的坑終究還是有它引起的,等以后再來(lái)補(bǔ)坑,不如現(xiàn)在就拿下它。
以下主要從幾個(gè)方面來(lái)講:
1.vue的生命周期是什么
2.vue生命周期的在項(xiàng)目中的執(zhí)行順序
3.vue中內(nèi)置的方法?屬性和vue生命周期的運(yùn)行順序(methods、computed、data、watch)
4.自己構(gòu)造的方法與vue生命周期的運(yùn)行順序?如show這些
5.總結(jié)
一、vue的生命周期是什么
? ? vue每個(gè)組件都是獨(dú)立的,每個(gè)組件都有一個(gè)屬于它的生命周期,從一個(gè)組件創(chuàng)建、數(shù)據(jù)初始化、掛載、更新、銷(xiāo)毀,這就是一個(gè)組件所謂的生命周期。在組件中具體的方法有:
? ? beforeCreate
? ? created
? ? beforeMount
? ? mounted
? ? (
?? ?? ? beforeUpdate
?? ?? ? updated
?? ?)
? ? beforeDestroy
? ? destroyed
? ? 對(duì)應(yīng)的中文就如其字面意思,英文不好的童鞋可以尋找翻譯軟件哦!謝謝!
Vue被淘汰了嗎?
我今天才開(kāi)始去了解Vue-cli 3.0,著手寫(xiě)了一個(gè)demo下來(lái)發(fā)現(xiàn),簡(jiǎn)直驚為天人,拋棄了2.x版本繁瑣的webpack配置,現(xiàn)在的可以說(shuō)簡(jiǎn)潔明了,你甚至不用寫(xiě)vue.config.js也行,空著唄,反正無(wú)傷大雅,但如果你配置一下你會(huì)發(fā)現(xiàn)也并不麻煩。
在我知道的知識(shí)范圍內(nèi),應(yīng)該是沒(méi)有比這個(gè)腳手架更能快速直接地反應(yīng)出數(shù)組或?qū)ο笞兓牧恕?/p>
此外,語(yǔ)法糖基本沒(méi)有很大變化,以前該怎么用現(xiàn)在還怎么用,只是性能優(yōu)化和語(yǔ)法糖很多了。講真,我完全找不到vue-cli3.0致命的坑。
然后,我還看到有人為jq打抱不平,我在一年半以前基本都是用jq寫(xiě)的,那時(shí)候覺(jué)得jq是js最好的框架,實(shí)在太方便了,操作dom也實(shí)在太爽了,直到我某次寫(xiě)一個(gè)排課項(xiàng)目卡了殼。。。
隨后我就轉(zhuǎn)小程序了,發(fā)現(xiàn)小程序的寫(xiě)法不就是vue么。。。尤其是組件的寫(xiě)法。。。
講到底,vue被淘汰有點(diǎn)難,畢竟這個(gè)時(shí)代是操作數(shù)據(jù)的時(shí)代,已經(jīng)不是dom操作的天下了。
最后,我覺(jué)得你不應(yīng)該拘泥于前端框架,就算以后會(huì)出現(xiàn)更先進(jìn)的框架,充其量也還是js,我實(shí)在想不出在框架這方面還能玩出什么花了。大概es會(huì)慢慢參考這些框架,然后自己變成如此也說(shuō)不定。就比如當(dāng)年你能想到j(luò)s里面還能寫(xiě)class來(lái)繼承?我第一次看到還以為是java。。。但現(xiàn)在不也就支持了么。。。
所以為什么不把目光放向后端?node都熟練了嗎?deno了解過(guò)嗎?php入門(mén)了嗎?python好歹掌握一下吧?這些語(yǔ)言我相信以后會(huì)慢慢出現(xiàn)在前端必會(huì)知識(shí)點(diǎn)里面(雖然php已經(jīng)是了,但感覺(jué)過(guò)氣了啊,說(shuō)好的php是世界上最好的語(yǔ)言呢。。。)
vue學(xué)習(xí)起來(lái)困難嗎?
對(duì)于小程序開(kāi)發(fā)來(lái)說(shuō),只要你了解js的語(yǔ)法,閉包之類(lèi)的核心概念就可以上手小程序,因?yàn)榇a是跑在小程序提供的沙箱環(huán)境中,所以重點(diǎn)是了解小程序提供的能力和api,了解js寫(xiě)法即可。
而對(duì)于vue來(lái)說(shuō),情況就比較復(fù)雜了,不建議不精通js之前就上手學(xué)習(xí)vue,可能你看看vue文檔能寫(xiě)出一些demo來(lái),但是跟小程序不同的是,小程序是一個(gè)環(huán)境,而vue是一個(gè)數(shù)據(jù)驅(qū)動(dòng)的js的mvvm框架,他是服務(wù)于js的,如果你連js都不精通就去學(xué)習(xí)一個(gè)服務(wù)于js的東西,不是本末倒置么?如果你在不精通js的情況下學(xué)習(xí)vue只能做到會(huì)寫(xiě)一些demo,你并不知道為什么要這么寫(xiě),這么寫(xiě)性能如何,對(duì)于稍微復(fù)雜一點(diǎn)的項(xiàng)目這種情況下都是搞不定的。
所以我的建議是js不精通的情況下最好還是先深入學(xué)習(xí)js打好基礎(chǔ),非要學(xué)的話,學(xué)小程序還好,vue建議先不要著急。至少買(mǎi)本《JavaScript高級(jí)程序設(shè)計(jì)》都看明白再去學(xué)習(xí)vue/react這類(lèi)js框架。
好啦,就是這些,如果你對(duì)前端或者全棧開(kāi)發(fā)感興趣歡迎關(guān)注我~,我是雞腿,一個(gè)戰(zhàn)斗在互聯(lián)網(wǎng)一線的全棧工程師,持續(xù)分享互聯(lián)網(wǎng)和編程干貨,觀迎關(guān)注~@全棧工程師雞腿