解决uni-app发布微信小程序主包大小限制为<2M的问题

一 问题说明

我想用uniapp开发多端应用,引入了uview组件库来美化样式,可发布为微信小程序却提示我代码质量不过关,主包代码量太大了:

二 问题分析

2.1 原生微信小程序开发代码质量限制:

1.主包代码大小不得大于2M,总代码量不得大于20M

2.如果使用原生tabbar,那么tabbar所在页面一定要在主包内

3.主包不能访问子包里面的资源

4.图片资源总大小不得大于200k

2.2 uni-app打包为微信小程序uni-module里面的代码会被打包到主包里面

我用hbuilderx插件的方式引入uview(使用npm包引入的话在hbuilder里面没有语法提示,很不方便),那么uview组件库1.4M会被放入主包里面。再加上vue的核心代码,主包的大小直接爆了。

三 问题解决

要解决主包大小限制的问题,要从一下几个方面考虑:

1.不要使用原生tabbar

使用uview的Tabbar组件,那么这部分代码就会被当成普通业务代码处理,也就不存在限制2的问题。我的代码想放在哪个包就放在哪个包。

2.uview的组件库代码不能放在主包里面,也就是说主包里面的业务代码不能使用uview组件

这里建议主包里面就放一个引导页面或者是登录页,一个vue简单的vue文件就7k大小,自己写一些样式,可以保证不超过大小限制

3.所有业务代码,自定义组件都在子包里面定义

微信小程序对于子包的大小是没有限制的,所以所有的业务逻辑都放在子包里面吧

4.图片资源使用CDN托管

除了tabbar的icon,其他所有图片都使用七牛云等平台进行托管,不要把图片资源放进代码里面,否则微信小程序上传代码时会提示代码质量不过关

以上只是我在开发过程中的个人思考,仅供参考,如有更好的方案请在评论区发表您的看法

相关推荐
Justin3go4 小时前
两年后又捣鼓了一个健康类小程序
前端·微信小程序
逆风优雅7 小时前
微信小程序使用rsa 加解密
微信小程序·小程序·notepad++
吉普赛的歌8 小时前
【小程序】如何生成特定页面的小程序码
小程序
kq-blue8 小时前
uniapp开发小程序,导出文件打开并保存,实现过程downloadFile下载,openDocument打开
小程序·uni-app·notepad++
菌菇汤9 小时前
微信小程序传参过来了,但是数据没有获取到
微信小程序·小程序·uniapp
走,带你去玩9 小时前
uniapp 微信小程序在线引入字体图标
微信小程序·小程序·uni-app
汤姆丁111110 小时前
wx.getLocation线上版本无法弹出授权框?
微信小程序
中了500w11 小时前
uniapp动态插槽打包成小程序不生效?
uni-app
帅次11 小时前
Flutter动画全解析:从AnimatedContainer到AnimationController的完整指南
android·flutter·ios·小程序·kotlin·android studio·iphone