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

關鍵詞:微信小程序問題熱度: