小程序分包

一,前言

1.在小程序里主包支持最大的大小是2M,超过了2M就不能打包上传了。

2.我们可以在开发者工具点击依赖分析,查看大小
在这里插入图片描述

二,主包过大解决方法

1.首先可以分析出来,内存大小是由代码,图片,等资源组成的。所以首先考虑到就是从这降低内存

(1)删除无用的代码
(2)压缩代码
(3)将图片放在远程服务器上,没有用上的图片删除

2.当超出的内存不多的时候,这在一定程度上能解决一些问题,另一个方法就是使用分包

三,分包

1.分包是解决主包过大问题的主要方法,

2.每个分包大小也不能超过2M, 所有包加起来不超过20M

2.在app.jsonsubpackages字段用于定义小程序的分包

3.subpackags接受一个数组,数组的每一个元素声明了一个包。

subpackages:[{
	root:'subpackages/fenbao', //定义了一个分包的路径,该路径下的所有文件都属于分包,会被打包进分包
	pages:['page1','pages2']
},{
	root:'subpackages/fenbao1', //定义了分包的路径,该路径下的所有文件都属于分包,会被打包进分包
	pages:['page1','pages2']
},{
	root:'packageB/pages', //定义了分包的路径,该路径下的所有文件都属于分包,会被打包进分包
	pages:['apple','banana']
}]
uni-app分包语法
//json中
subpackages:[{
	root:'subpackages/fenbao', //定义了一个分包的路径,该路径下的所有文件都属于分包,会被打包进分包
	pages:[{path:'page1',style:{...}}]
}]

//manifest.json中
// "mp-weixin"
"optimization":{
	"subPackages":true //是否启用分包优化
}

4.注意只有在subpackagesroot下定义的文件才会被打包进分包

├── app.js
├── app.json
├── app.wxss
├── subpackages //目录名称可以任意命名只要和subpackages的root对应的上即可
 	└── others //注意,未定义,不属于分包
│   └── fenbao //注意,只有在subpackages里定义了路径,该路径和下面的包,才会处于一个分包中
│       ├── page1 //属于fenbao
│       └── pages2 //属于fenbao
	└── fenbao2 
│       ├── page1 //属于fenbao2
│       └── pages2 //属于fenbao2
├── packageB 
│   └── pages 
│       ├── apple
│       └── banana
├── pages
│   ├── index
│   └── logs
└── utils

在这里插入图片描述
根据上面的定义,图中三个红框分包为三个分包

四,分包注意事项

1.tabar页不能放在分包中

2.一个分包不能使用另一个分包的js和静态资源

3.分包中可以使用主包的资源和app实例

4.同一个分包下的页面,可以使用分包内的资源

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值