智能小程序档案馆——如何给“包”瘦身
上傳小程序代碼的時(shí)候包體積太大不知如何是好?小程序打開(kāi)速度慢,流量耗費(fèi)大不知如何優(yōu)化?在今天的文章里,我們一起來(lái)討論一下如何給“包”瘦身。
為什么要限制包的大小?
我們都知道小程序作為一種 Hybrid 的解決方案,需要?jiǎng)討B(tài)的進(jìn)行包的更新,因此如果包的體積過(guò)大,將會(huì)出現(xiàn)打開(kāi)速度慢,耗流量等問(wèn)題,因而影響用戶體驗(yàn)。 因此小程序在上傳的時(shí)候會(huì)對(duì)包的大小進(jìn)行限制。
包的大小要多少才合適呢?
官方文檔中,百度小程序?qū)τ诎南拗剖?#xff1a;“整個(gè)小程序所有分包大小不超過(guò) 8M ,單個(gè)分包大小不能超過(guò) 4M。” 展開(kāi)來(lái)說(shuō),如果你有 N 個(gè)分包,那么請(qǐng)確保這 N 個(gè)分包加起來(lái)的大小不超過(guò) 8M,同時(shí)每個(gè)分包的大小也不能超過(guò) 4M。
假如你并沒(méi)有做分包,只有一個(gè)包的話,那么你的小程序包大小就不能超過(guò) 4M 了。
如何減少包的大小?
外鏈資源文件
我們?cè)陂_(kāi)發(fā)小程序的時(shí)候,往往需要很多資源文件,如:圖片/iconfont 等,這些資源文件,最好只留必要的(如:離線場(chǎng)景下也需要的 icon 圖片,或者首屏就需要的圖片),其他的圖片文件,建議換成遠(yuǎn)程地址,以減少包的體積。
當(dāng)然這個(gè)還是得開(kāi)發(fā)者自行斟酌包大小與圖片請(qǐng)求的關(guān)系。
首頁(yè)獨(dú)立分包
其實(shí)分包的本質(zhì)并不算減少了包的體積,而是減少了進(jìn)入場(chǎng)景下的頁(yè)面的包體積。比如,我們的小程序非常大,但是每次進(jìn)入首頁(yè)的時(shí)候,沒(méi)必要所有頁(yè)面都下載下來(lái)的話,就可以把首頁(yè)做成獨(dú)立分包。
{"pages": ["page/index"],"subPackages": [{"root": "subpackage","pages": ["pages/subpageone","pages/subpagetwo"]}] } 復(fù)制代碼這樣,用戶打開(kāi)首頁(yè)時(shí),只會(huì)加載首頁(yè)的包,有利于提升加載速度。subpackage 文件夾下的打包則會(huì)在之后訪問(wèn)到隸屬于 subpackage 下的頁(yè)面時(shí),開(kāi)始加載。
使用依賴分析模式
相信用過(guò)小程序開(kāi)發(fā)者的同學(xué)們,肯定會(huì)注意到開(kāi)發(fā)者工具上方有一欄“編譯模式“ 默認(rèn)情況下是依賴分析模式
依賴分析模式其實(shí)就是指,開(kāi)發(fā)者工具中的編譯模塊,會(huì)以每個(gè)頁(yè)面為入口,依賴分析式將所有文件打包到一起。這種模式下,我們很多沒(méi)有被引用到的代碼,將不會(huì)被打到發(fā)布包中。從而保障發(fā)布包中的代碼盡量為有用代碼。以上為今天的全部?jī)?nèi)容,為您介紹了三種可以減少包體積的方法,感興趣的童鞋可以都嘗試一下哦~
總結(jié)
以上是生活随笔為你收集整理的智能小程序档案馆——如何给“包”瘦身的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: nginx 响应服务器静态,405 No
- 下一篇: CMake 常用的预定义变量