在小程序這個環(huán)境下,怎樣提高頁面加載速度呢?
這個問題很大,我把問題具體一下,如何縮短從用戶點擊某個鏈接,到打開新頁面的這段時間?
這里拋一個核心關(guān)鍵點:從頁面響應(yīng)用戶點擊行為,開始跳轉(zhuǎn),到新頁面事件觸發(fā),存在一個延遲,這個延遲大概在100-300ms之間(安卓響應(yīng)比ios慢些)。
這個延遲說短不短,我們可以利用這段時間,預先發(fā)起新頁面所需要的網(wǎng)絡(luò)請求。這樣一來,就節(jié)省了100-300ms(或者一個網(wǎng)絡(luò)請求的時間)。
知道有這個gap后,代碼如何實現(xiàn)呢?
說白了,就是實現(xiàn)一個在A頁面預加載B頁面數(shù)據(jù)的功能。但而這種跨頁面的調(diào)用,很容易把邏輯搞復雜,將不同頁面的邏輯耦合在一起。所以,我們希望將預加載的邏輯隱藏于無形中,不增加任何的頁面間耦合,以及開發(fā)復雜度。