目前小程序开发大小有以下限制:
- 整个小程序所有分包大小不超过 8M
- 单个分包/主包大小不能超过 2M
在不断的迭代中,代码很容易超过限制,导致无法上传,所以最近对项目整体结构做了个优化,总结以下
1,使用分包
官方文档地址
主包只放置 TabBar 页面,其余页面都放置在分包目录里,可以根据相应业务建立分包文件夹
├── pages // 主包文件夹
│ ├── xxx1 // xxx1 tarbar页面
│ ├── xxx2 // xxx2 tarbar页面
│ ├── xxx3 // xxx3 tarbar页面
│ └── xxx4 // xxx4 tarbar页面
├── subPackages // 分包文件夹
│ ├── xxx // xxx 相关业务代码
│ ├── xxx // xxx 相关业务代码
│ ├── xxx // xxx 相关业务代码
│ ├── xxx // xxx 相关业务代码
│ └── xxx // xxx 相关业务代码
├── service // 服务层相关业务代码
├── .gitignore // git 忽略项
├── app.js
├── app.json
└── README.md // 说明文档
2,图片资源处理
对于不经常改变的图片,可以使用 CDN 服务器,然后在小程序里引用 CDN 链接,例如小程序 logo,首页背景图,加载无数据的提示图片,这些都可以放在 CDN 服务器上。
3,及时清理没有使用到的代码和资源
引用官方的一段原话
在日常开发的时候,我们可能引入了一些新的库文件,而过了一段时间后,由于各种原因又不再使用这个库了,我们常常会只是去掉了代码里的引用,而忘记删掉这类库文件了。目前小程序打包是会将工程下所有文件都打入代码包内,也就是说,这些没有被实际使用到的库文件和资源也会被打入到代码包里,从而影响到整体代码包的大小。
4,资源文件要放在合适的位置
根据小程序的打包原则:subpackages 配置路径外的目录将被打包到 app(主包) 中,所以引用的一些UI库,js插件,字体库,都会打包到主包内,所以主包会越来越大。因此,如果某个第三方UI组件,或者第三方插件,只有某个页面需要,尽量放在该页面所在的分包目录下,毕竟主包只有2M的空间,分包加一起可以有8M空间。
关于小程序的优化,不断探索和积累中,欢迎大家一起交流
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。