微信小程序的性能優(yōu)化

先要進(jìn)行性能優(yōu)化首先需要了解小程序的實現(xiàn)原理:
參考文檔:

啟動小程序的步驟:

  • 從CDN服務(wù)器上下載小程序代碼包(代碼包不是小程序的源代碼脾拆,而是編譯见转、壓縮打包之后的代碼包)
  • 加載此代碼包
  • 初始化首屏

由此,我們從加載尊浓、渲染兩個方面來進(jìn)行優(yōu)化

1. 加載
1.1 進(jìn)行分包處理
  • 微信小程序要求每個包大小不能超過2M粪狼;
1.2 控制包的大小
  • 減少資源包中的圖片等資源的數(shù)量和大型诵取(icon可以放在本地,圖片盡量放在服務(wù)器上再榄,然后http引入)狡刘;
  • 提取公共組件、方法困鸥、樣式嗅蔬,減少冗余代碼;
  • 及時清理無用代碼和資源文件疾就;
  • 第三方插件包按需引入澜术;
2. 渲染
2.1 對于數(shù)據(jù)的請求(首屏體驗(預(yù)請求,利用緩存))
  • 盡量提早請求數(shù)據(jù)猬腰,不要等頁面ready后再異步請求數(shù)據(jù)


    數(shù)據(jù)的請求時機(jī)
  • 盡量減少不必要的https請求瘪板,可使用 getStorageSync() 及 setStorageSync() 方法將數(shù)據(jù)存儲在本地
  • 可以在前置頁面將一些有用的字段帶到當(dāng)前頁,進(jìn)行首次渲染(列表頁的某些數(shù)據(jù)--> 詳情頁)漆诽,沒有數(shù)據(jù)的模塊可以進(jìn)行骨架屏的占位
2.2 規(guī)范setData操作
image.png
  • 減少setData次數(shù)
    a) 僅傳輸視圖層使用到的數(shù)據(jù)侮攀,JS環(huán)境用到的數(shù)據(jù)存放到data對象外;
    b) 合理利用局部更新。setData支持使用數(shù)據(jù)路徑的方式對對象的局部字段進(jìn)行更新厢拭。
this.setData({
       [`dotList[${tarIndex}].dotShow`]: true,
       [`dotList[${tarIndex}].dotNum`]: +res.data
});
  • 降低setData執(zhí)行頻率:
    c) 將多個setData調(diào)用合并執(zhí)行兰英,減少線程間通信頻次;
    d) 當(dāng)需要在頻繁觸發(fā)的用戶事件(如PageScroll、Resize事件)中調(diào)用setData供鸠,合理的利用函數(shù)防抖(debounce)和函數(shù)節(jié)流(throttle)可以減少setData執(zhí)行次數(shù)畦贸。
2.3 使用自定義組件
  • 對于一些獨立的模塊我們盡可能抽離出來,因為自定義組件的更新并不會影響頁面上其他元素的更新
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市薄坏,隨后出現(xiàn)的幾起案子趋厉,更是在濱河造成了極大的恐慌,老刑警劉巖胶坠,帶你破解...
    沈念sama閱讀 221,576評論 6 515
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件君账,死亡現(xiàn)場離奇詭異,居然都是意外死亡沈善,警方通過查閱死者的電腦和手機(jī)乡数,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 94,515評論 3 399
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來闻牡,“玉大人净赴,你說我怎么就攤上這事≌秩螅” “怎么了玖翅?”我有些...
    開封第一講書人閱讀 168,017評論 0 360
  • 文/不壞的土叔 我叫張陵,是天一觀的道長割以。 經(jīng)常有香客問我烧栋,道長,這世上最難降的妖魔是什么拳球? 我笑而不...
    開封第一講書人閱讀 59,626評論 1 296
  • 正文 為了忘掉前任审姓,我火速辦了婚禮,結(jié)果婚禮上祝峻,老公的妹妹穿的比我還像新娘魔吐。我一直安慰自己,他們只是感情好莱找,可當(dāng)我...
    茶點故事閱讀 68,625評論 6 397
  • 文/花漫 我一把揭開白布酬姆。 她就那樣靜靜地躺著,像睡著了一般奥溺。 火紅的嫁衣襯著肌膚如雪辞色。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 52,255評論 1 308
  • 那天浮定,我揣著相機(jī)與錄音相满,去河邊找鬼。 笑死桦卒,一個胖子當(dāng)著我的面吹牛立美,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播方灾,決...
    沈念sama閱讀 40,825評論 3 421
  • 文/蒼蘭香墨 我猛地睜開眼建蹄,長吁一口氣:“原來是場噩夢啊……” “哼碌更!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起洞慎,我...
    開封第一講書人閱讀 39,729評論 0 276
  • 序言:老撾萬榮一對情侶失蹤痛单,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后劲腿,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體旭绒,經(jīng)...
    沈念sama閱讀 46,271評論 1 320
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,363評論 3 340
  • 正文 我和宋清朗相戀三年谆棱,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片圆仔。...
    茶點故事閱讀 40,498評論 1 352
  • 序言:一個原本活蹦亂跳的男人離奇死亡垃瞧,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出坪郭,到底是詐尸還是另有隱情个从,我是刑警寧澤,帶...
    沈念sama閱讀 36,183評論 5 350
  • 正文 年R本政府宣布歪沃,位于F島的核電站嗦锐,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏沪曙。R本人自食惡果不足惜奕污,卻給世界環(huán)境...
    茶點故事閱讀 41,867評論 3 333
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望液走。 院中可真熱鬧碳默,春花似錦、人聲如沸缘眶。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,338評論 0 24
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽巷懈。三九已至该抒,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間顶燕,已是汗流浹背凑保。 一陣腳步聲響...
    開封第一講書人閱讀 33,458評論 1 272
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留涌攻,地道東北人愉适。 一個月前我還...
    沈念sama閱讀 48,906評論 3 376
  • 正文 我出身青樓,卻偏偏與公主長得像癣漆,于是被迫代替她去往敵國和親维咸。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,507評論 2 359

推薦閱讀更多精彩內(nèi)容