分包加载
将小程序不同功能的代码分别打包成不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。
包含一个主包和多个子包。
加载顺序:
在小程序启动时,默认会下载主包并启动主包内的页面;当用户进入分包内某个页面时,微信客户端会把对应分包下载下来,下载完成后再进行展示。
大小限制:
- 整个小程序所有分包大小不超过 20M
- 单个分包或主包大小不能超过 2M
配置分包加载
在 app.json 中配置分包,通过subPackages
或subpackages
定义分包结构。
每个分包结构含三个常用字段:
root
:分包的根目录,该目录下的所有文件都会被打包成一个独立的包name
:分包的别名,用于在代码中引用该分包pages
:指定当前分包中包含哪些页面
示例:
- 根目录下新建 modules 目录
- 在 app.json 中配置 subPackages
{
"subPackages": [
{
"root": "modules/foo",
"name": "foo",
"pages": ["pages/index/index", "pages/detail/index"]
}
]
}
- 按下
cmd + s
保存,然后就会自动在 modules 目录下生成 foo 目录,目录结构如下:
- modules
- foo
- pages
- index
- detail