如何提高微信小程序的應(yīng)用速度?
關(guān)鍵詞:如何,提高,微信,小,程序,的,應(yīng)用,速度,我,
【問(wèn)題描述】
我前段時(shí)間開(kāi)發(fā)了一個(gè)微信小程序,主要是做一些圖文段子類的東西,然后別人反映微信小程序的響應(yīng)速度很慢,那么我想請(qǐng)問(wèn)一下應(yīng)該如何提高微信小程序的應(yīng)用速度呢?
最后回答時(shí)間 · 2020-12-10
如何提高微信小程序的應(yīng)用速度?
第一、用戶行為預(yù)測(cè)
我們實(shí)現(xiàn)了用戶主動(dòng)點(diǎn)擊頁(yè)面,提前加載下一頁(yè)面數(shù)據(jù)的方法。而在某些場(chǎng)景下,用戶的行為可以預(yù)測(cè),我們可以在用戶還沒(méi)點(diǎn)擊的時(shí)候就預(yù)加載下個(gè)頁(yè)面的數(shù)據(jù)。讓下個(gè)頁(yè)面秒開(kāi),進(jìn)一步提升體驗(yàn)的流暢性。繼續(xù)以騰訊視頻小程序?yàn)槔?,主界面分?個(gè)頁(yè)卡,通過(guò)簡(jiǎn)單的數(shù)據(jù)分析,發(fā)現(xiàn)進(jìn)入首頁(yè)的用戶有50%會(huì)訪問(wèn)第二個(gè)頁(yè)卡。所以預(yù)加載第二個(gè)頁(yè)卡的數(shù)據(jù)可以很大程度提高用戶下個(gè)點(diǎn)擊頁(yè)面的打開(kāi)速度。
第二、提高頁(yè)面加載速度
在小程序這個(gè)環(huán)境下,怎樣提高頁(yè)面加載速度呢? 這個(gè)問(wèn)題很大,我把問(wèn)題具體一下,如何縮短從用戶點(diǎn)擊某個(gè)鏈接,到打開(kāi)新頁(yè)面的這段時(shí)間? 這里拋一個(gè)核心關(guān)鍵點(diǎn):從頁(yè)面響應(yīng)用戶點(diǎn)擊行為,開(kāi)始跳轉(zhuǎn),到新頁(yè)面onload事件觸發(fā),存在一個(gè)延遲,這個(gè)延遲大概在100-300ms之間。這個(gè)延遲說(shuō)短不短,我們可以利用這段時(shí)間,預(yù)先發(fā)起新頁(yè)面所需要的網(wǎng)絡(luò)請(qǐng)求。這樣一來(lái),就節(jié)省了100-300ms。知道有這個(gè)gap后,代碼如何實(shí)現(xiàn)呢?說(shuō)白了,就是實(shí)現(xiàn)一個(gè)在A頁(yè)面預(yù)加載B頁(yè)面數(shù)據(jù)的功能。但而這種跨頁(yè)面的調(diào)用,很容易把邏輯搞復(fù)雜,將不同頁(yè)面的邏輯耦合在一起。所以,我們希望將預(yù)加載的邏輯隱藏于無(wú)形中,不增加任何的頁(yè)面間耦合,以及開(kāi)發(fā)復(fù)雜度。
第三、組件化方案
微信沒(méi)有提供小程序的組件化方案。但開(kāi)談不說(shuō)組件化,寫再多代碼也枉然。這里演示一個(gè)簡(jiǎn)單的組件化實(shí)現(xiàn)。這是一個(gè)非常有用的東西,可以把所有通用的邏輯都寫在基類里面,包括pv統(tǒng)計(jì),來(lái)源統(tǒng)計(jì),擴(kuò)展生命周期函數(shù),實(shí)現(xiàn)組件化等。函數(shù)第一個(gè)參數(shù)是頁(yè)面名稱,作為頁(yè)面的key。第二個(gè)是page對(duì)象,其中擴(kuò)展了一個(gè)comps數(shù)組,里面就是所有要加載的組件。基類做的事情,就是把這些組件對(duì)象的屬性和方法復(fù)制到Page對(duì)象上。其中data屬性會(huì)merge到一起。而微信預(yù)定義的生命周期函數(shù),則封裝成隊(duì)列按序執(zhí)行。
第四、減少默認(rèn)data的大小
剛剛說(shuō)到,頁(yè)面打開(kāi)一個(gè)新頁(yè)面時(shí)微信會(huì)深拷貝一個(gè)page對(duì)象,因此,應(yīng)該盡量減少默認(rèn)data的大小,以及減少對(duì)象內(nèi)的自定義屬性。有圖有真相:這里寫圖片描述以一個(gè)100個(gè)屬性的data對(duì)象為測(cè)試用例,在iphone6上,頁(yè)面的創(chuàng)建時(shí)間會(huì)因此增加150ms。
通過(guò)不同的小程序相互跳線或同行之間。這非常簡(jiǎn)單,即商家將小程序綁定到相同的公共號(hào)碼,并且用戶可以同時(shí)查看不同商家的信息。通過(guò)行業(yè)媒體人士,類似于旅游行業(yè)的人來(lái)尋找旅游博主,可以準(zhǔn)確地定位并獲得用戶。新浪博客,今天的標(biāo)題不是軟文字平臺(tái)。


關(guān)鍵詞:微信小程序問(wèn)題熱度: