uniapp 超过2m无法上传代码!uni-module太大了,小程序无法上传怎么办?

问题描述:

虽然分包了。但是主包里还有很多uniui的组件,占了2m多,之前一直是点击运行,然后再上传代码。提示的超过2m无法上传。

解决办法:

点击发行,然后上传就可以了。

优化建议:

1、组件按需导入,不用的就删了。

2、图片要压缩一下

3、 主要的页面放在主包里,次要的就放在分包里。

分包方法:

你踩的坑这里都有微信小程序分包指南:

1、tabbar 必须在主包中

这条在官方文档中也有说明:

tabBar 页面必须在 app(主包)内

这条比较容易理解,tabBar 页面必须放在app.json中的外层pages中而不能放在subpackages(分包)中。否则报错:

“pages/index” 不应该在 [subpackages] [0] 中

2、主包大小问题和公共资源读取问题

辛苦分包完成,还是无法运行成功,原来是某一个包仍然"超重",这时可以使用开发者工具的代码依赖分析工具查看各包的大小情况。

这时我们可能会发现主包太大了,但是外层pages中并没有几个页面,这是为啥?

点开代码依赖分析工具发现主包中包含了大量的公共资源,比如公用组件,api这种,原因也在上面写到了:

声明 subpackages 后,将按 subpackages 配置路径进行打包,subpackages 配置路径外的目录将被打包到 app(主包) 中

有小机灵鬼会想,我把这些公共资源单独放在一个包里不就可以了吗。一试,项目都起不来了。

子包可以使用主包的资源,但是主包不可以使用子包的资源,子包之间的资源也不通用。

所以公共资源一点要放在主包里。

如果主包太大了,只能将公共资源放在对应的子包中,而不能跨包调用哦。

经验分享 程序员 微信小程序 职场和发展