三招让你成为vue.js大师
對(duì)大部分人來(lái)說(shuō),掌握Vue.js基本的幾個(gè)API后就已經(jīng)能夠正常地開(kāi)發(fā)前端網(wǎng)站。但如果你想更加高效地使用Vue來(lái)開(kāi)發(fā),成為Vue.js大師,那下面我要傳授的這三招你一定得認(rèn)真學(xué)習(xí)一下了。
第一招:化繁為簡(jiǎn)的Watchers
場(chǎng)景還原:
組件創(chuàng)建的時(shí)候我們獲取一次列表,同時(shí)監(jiān)聽(tīng)input框,每當(dāng)發(fā)生變化的時(shí)候重新獲取一次篩選后的列表這個(gè)場(chǎng)景很常見(jiàn),有沒(méi)有辦法優(yōu)化一下呢?
招式解析:
首先,在watchers中,可以直接使用函數(shù)的字面量名稱;其次,聲明immediate:true表示創(chuàng)建組件時(shí)立馬執(zhí)行一次。
第二招:釜底抽薪的router key?
場(chǎng)景還原:?
假設(shè)我們?cè)趯?xiě)一個(gè)網(wǎng)站,需求是從/post-page/a,跳轉(zhuǎn)到/post-page/b。然后我們驚人的發(fā)現(xiàn),頁(yè)面跳轉(zhuǎn)后數(shù)據(jù)竟然沒(méi)更新?!原因是vue-router"智能地"發(fā)現(xiàn)這是同一個(gè)組件,然后它就決定要復(fù)用這個(gè)組件,所以你在created函數(shù)里寫(xiě)的方法壓根就沒(méi)執(zhí)行。通常的解決方案是監(jiān)聽(tīng)$route的變化來(lái)初始化數(shù)據(jù),但是這樣的寫(xiě)法很繁瑣,秉持著能偷懶則偷懶的原則,有沒(méi)有辦法優(yōu)化一下??
招式解析: 答案是給router-view添加一個(gè)unique的key,這樣即使是公用組件,只要url變化了,就一定會(huì)重新創(chuàng)建這個(gè)組件。(雖然損失了一丟丟性能,但避免了無(wú)限的bug)。同時(shí),注意我將key直接設(shè)置為路由的完整路徑,一舉兩得。
第三招:無(wú)所不能的render函數(shù)?
場(chǎng)景還原:?
vue要求每一個(gè)組件都只能有一個(gè)根元素,當(dāng)你有多個(gè)根元素時(shí),vue就會(huì)給你報(bào)錯(cuò)?
招式解析: 那有沒(méi)有辦法化解呢,答案是有的,只不過(guò)這時(shí)候我們需要使用render()函數(shù)來(lái)創(chuàng)建HTML,而不是template。其實(shí)用js來(lái)生成html的好處就是極度的靈活功能強(qiáng)大,而且你不需要去學(xué)習(xí)使用vue的那些功能有限的指令A(yù)PI,比如v-for, v-if。
歡迎更多的同學(xué)來(lái)和我們一起討論和學(xué)習(xí)更多前端前沿技術(shù)和知識(shí),前端全棧的時(shí)代已經(jīng)來(lái)臨~
百度T8頂級(jí)前端大牛MAX獨(dú)家視頻分享限量免費(fèi)開(kāi)放!!!
獲取方式:添加文末小學(xué)妹微信。通過(guò)申請(qǐng)后,免費(fèi)領(lǐng)取!!!因分享內(nèi)容寶貴,僅限前200名添加微信的《web前端教程》公眾號(hào)讀者,需要的讀者抓緊速度,先到先得。
領(lǐng)取方式:添加小學(xué)妹微信,即可領(lǐng)取Vue視頻。
PS:本套視頻由百度T8頂級(jí)前端大牛MAX親自操刀,耗時(shí)一年研發(fā)的精品課程——《Web全棧工程師》,濃縮了MAX團(tuán)隊(duì)8年以來(lái)的實(shí)戰(zhàn)經(jīng)驗(yàn),以此來(lái)幫助初級(jí)前端工程師實(shí)現(xiàn)全方位進(jìn)階。課程深度對(duì)標(biāo)百度T6--T7,阿里P7-P8,適合具備1-4年開(kāi)發(fā)經(jīng)驗(yàn)的前端程序員們學(xué)習(xí)。
MAX老師介紹
百度T8頂級(jí)前端架構(gòu)師,W3C Web Platform 工作組核心成員,9 年一線大廠前端經(jīng)驗(yàn),曾就職于阿里、百度。擁有豐富的前后端全棧工作經(jīng)驗(yàn),獨(dú)立負(fù)責(zé)數(shù)億級(jí) PV 的項(xiàng)目,在 ES6/7/next、Node.js、Vue、小程序、PWA 等的使用上具備頂級(jí)的實(shí)戰(zhàn)經(jīng)驗(yàn)。歷經(jīng)從 jQuery 到模塊化,到大前端,再到現(xiàn)在小程序的前端進(jìn)化史。
總結(jié)
以上是生活随笔為你收集整理的三招让你成为vue.js大师的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 科大星云诗社动态20210910
- 下一篇: 科大星云诗社动态20210909