微信小程序上传代码时,默认源代码大小不能超过2M,如果小程序的图片,业务过多,就会超过大小,这时我们打包上传时,就需要分包上传。
关于分包优化的说明
• 在对应平台的配置下添加"optimization":{“subPackages”:true}开启分包优化
• 目前只支持mp-weixin、mp-qq、mp-baidu的分包优化
• 分包优化具体逻辑:
• 静态文件:分包下支持 static 等静态资源拷贝,即分包目录内放置的静态资源不会被打包到主包中,也不可在主包中使用
• js文件:当某个 js 仅被一个分包引用时,该 js 会被打包到该分包内,否则仍打到主包(即被主包引用,或被超过 1 个分包引用)
• 自定义组件:若某个自定义组件仅被一个分包引用时,且未放入到分包内,编译时会输出提示信息(这里要注意,也就是说分包内important引入的文件必须放在本包内,本包不能引入外包的文件,但是不同包内的文件可以进行路由跳转)
一、manifest.json
首先我们需要咋imanifest.json文件中加上 要与appid持平
"mp-weixin": {
/* 小程序特有相关 */
"usingComponents": true,
"appid": "",
"setting": {
"urlCheck": true
},
"optimization":{"subPackages":true}
},
二、更改项目结构,更改pages.json
项目结构需要更改为与官网里一样的项目结构
这里的pages相当于一个主包,pagesA和PagesB是分包,也就是项目结构,分包和主包都是平行的,项目结构调整完毕之后,我们就只用去调整pages.json的
{
"pages": [
{
"path": "pages/xxx/xxx/xxx"
},
{
"path": "pages/xxx/xxx/xxx"
}
],
"subPackages":[{
"root": "pagesA",
"pages":[
{
"path": "xxx"
},
{
"path": "xxx"
},
{
"path": "xxx"
}
]
}],
"globalStyle": {
"navigationBarTextStyle": "black",
"navigationBarTitleText": "xxx",
"navigationBarBackgroundColor": "#F8F8F8",
"backgroundColor": "#F8F8F8"
}
}
然后在打包,就会出现pages和pagesA了