開發者可以通過配置,在進入小程序某個頁面時,由框架自動預下載可能需要的分包,提升進入后續分包頁面時的啟動速度。對於獨立分包,也可以預下載主包。
配置方法
預下載分包行為在進入某個頁面時觸發,通過在 app.json
增加 preloadRule
配置來控制。
{
"pages": ["pages/index"],
"subpackages": [
{
"root": "important",
"pages": ["index"]
},
{
"root": "sub1",
"pages": ["index"]
},
{
"name": "hello",
"root": "path/to",
"pages": ["index"]
},
{
"root": "sub3",
"pages": ["index"]
},
{
"root": "indep",
"pages": ["index"],
"independent": true
}
],
"preloadRule": {
"pages/index": {
"network": "all",
"packages": ["important"]
},
"sub1/index": {
"packages": ["hello", "sub3"]
},
"sub3/index": {
"packages": ["path/to"]
},
"indep/index": {
"packages": ["__APP__"]
}
}
}
限制
同一個分包中的頁面享有共同的預下載大小限額 2M,限額會在工具中打包時校驗。
如,頁面 A 和 B 都在同一個分包中,A 中預下載總大小 0.5M 的分包,B中最多只能預下載總大小 1.5M 的分包
參見官方文檔:https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/preload.html