分包预下载目前只支持通过配置方式使用。
预下载分包行为在进入某个页面时触发,通过在 app.json 增加 preloadRule 配置来控制。
点击(此处)折叠或打开
- {
- "pages": [
- "page/tabBar/component/index", //小程序默认的首页 主包
- "page/tabBar/API/index"
- ],
- "window": {
- "navigationBarTextStyle": "black",
- "navigationBarTitleText": "分包预下载",
- "navigationBarBackgroundColor": "#F8F8F8",
- "backgroundColor": "#F8F8F8"
- },
- "tabBar": {
- "color": "#7A7E83",
- "selectedColor": "#3cc51f",
- "borderStyle": "black",
- "backgroundColor": "#ffffff",
- "list": [
- {
- "pagePath": "page/tabBar/component/index",
- "iconPath": "image/icon_component.png",
- "selectedIconPath": "image/icon_component_HL.png",
- "text": "组件"
- },
- {
- "pagePath": "page/tabBar/API/index",
- "iconPath": "image/icon_API.png",
- "selectedIconPath": "image/icon_API_HL.png",
- "text": "接口"
- }
- ]
- },
- "subPackages": [ // 分包字段
- {
- "root": "page/component/", //分包1 page/component
- "pages": [
- "pages/view/view",
- "pages/scroll-view/scroll-view",
- ]
- },
- {
- "root": "page/API/", //分包2 page/API/
- "pages": [
- "pages/login/login",
- "pages/get-user-info/get-user-info"
-
- ]
- }
- ],
- "preloadRule": { //分包加载字段
- //当页面 page/tabBar/component/index 触发时开始下载 分包 page/component/
- "page/tabBar/component/index": {
- "network": "all",
- "packages": [
- "page/component/"
- ]
- },
- //当页面 page/tabBar/API/index 触发时开始下载 分包 page/API/
- "page/tabBar/API/index": {
- "network": "all",
- "packages": [
- "page/API/"
- ]
- }
- },
-
- }
preloadSubpackages: page/component/
preloadSubpackages: success
web调试工具样式
安卓真机调试
参数说明:
ps:
同一个分包中的页面享有共同的预下载大小限额 2M,限额会在工具中打包时校验。
如,页面 A 和 B 都在同一个分包中,A 中预下载总大小 0.5M 的分包,B中最多只能预下载总大小 1.5M 的分包。
分包预下载优点:
在小程序启动时,默认会下载主包并启动主包内页面,如果用户需要打开分包内某个页面,客户端会把对应分包下载下来,下载完成后再进行展示,第一次从主包进入副包,需要加载,加载的时间用户只能等待,分包预下载大大优化用户的等待时间