在主包达到1.5M时新增模块,需要作分包处理。
打包原则
- 声明?
subpackages ?后,将按?subpackages ?配置路径进行打包,subpackages ?配置路径外的目录将被打包到 app(主包) 中 - app(主包)也可以有自己的 pages(即最外层的 pages 字段)
subpackage ?的根目录不能是另外一个?subpackage ?内的子目录tabBar ?页面必须在 app(主包)内
引用原则
packageA ?无法 require?packageB ?JS 文件,但可以 require?app 、自己 package 内的 JS 文件;使用?分包异步化?时不受此条限制packageA ?无法 import?packageB ?的 template,但可以 require?app 、自己 package 内的 templatepackageA ?无法使用?packageB ?的资源,但可以使用?app 、自己 package 内的资源
pages 为主包目录
subpackages 为分包,root 代表分包的跟路径。pages是页面
1、修改分包配置:app.json
*注意 *:保存后你会发现packageA/pages/cat,会自动生成对应的目录。
{
// pages 是主包内容
"pages":[
"pages/index",
"pages/logs"
],
// subpackages 是分包内容
"subpackages": [
{
"root": "packageA",
"pages": [
"pages/cat"
]
}, {
"root": "packageB",
"name": "pack2",
"pages": [
"pages/apple"
]
}
]
}
2、新增分包目录:packageA
在小程序跟目录新增 packageA 与主包的pages 平级,对应app.json 目录。
为了规范管理,尽量在根目录建分包,且使用package等前缀标识此目录。
3、关于跳转:按照目录跳转 packageA/pages/cat
wx.navigateTo({url:"packageA/pages/cat"})
4、查看分包
打开代码依赖分析,查看代码包,页面测试跳转成功
恭喜你,分包成功!?可以上传代码了~
|