uni-app小程序超过2M怎么办
2024-09-18
677 字约 3 分钟
...开发版可以调整上限为4M
开发者工具 -> 详情 -> 本地设置 -> 预览及真机调试时主包、分包体积上限调整为4M -> 勾选
上传代码时,主包必须在2M以内。
小程序tabbar页面必须放在主包。
推荐除了tabbar页面以外,其余的都放在分包。其实只要这样做了,再复杂的小程序,主包代码都很难超过2M,但如果是uni-app开发的,那就不一定了。
开发环境压缩代码
使用cli创建的项目
在package.json,script中设置压缩:在命令中加入--minimize
"dev:mp-weixin": "cross-env NODE_ENV=development UNI_PLATFORM=mp-weixin vue-cli-service uni-build --watch --minimize",
使用hbuilderx创建的项目
顶部菜单栏点击运行 -> 运行到小程序模拟器 -> 运行时是否压缩代码 -> 勾选
开启压缩后,开发环境的小程序代码体积会大大降低
uni.scss优化
uni-app项目创建后会自带一个uni.scss文件,这个文件无需手动引入,会自动引入到每一个页面文件,所以尽量不要在这个文件内写公共css代码。
我接手的一个uni-app小程序项目,随着功能迭代,打包代码主包体积越来越接近2M,终于有一天写完一个功能,突然就达到了2.2M,无法上传了。参考小程序提供的代码依赖分析,发现wxss文件占用了大部分体积,于是我就去一个个搜,看某个class有没有被用到,没用到的就删掉,可是再怎么优化冗余代码,也无法降到2M以下。
直到我看到了uni.scss文件,除了里面自带的一些颜色变量代码,另外还加了700行的公共class,然后我在根目录新建一个assets/common.scss文件,把那700行代码移出去,在App.vue内引入
@import './assets/common.scss'
主包体积瞬间降到了1.41M

重要的事情说三遍
- 不要在uni.scss文件内写公共css代码
- 不要在uni.scss文件内写公共css代码
- 不要在uni.scss文件内写公共css代码
如果您觉得这篇文章有帮助,请点个赞吧~
相关文章
更多文章 →uniapp2025-07-15
uniapp页面跳转传参
1\. uni .navigateTo 传: 接: 2\. navigator 传: 接:
学习
uniapp2025-07-09
uni-app中的#ifdef #ifndef #endif的用处
| #ifdef | 仅在某个平台上使用 | | #ifndef | 在除了这个平台的其他平台上使用(非此平台使用) | | #endif | 结束条件编译 | 2. 标识的意思 | 标识 | 平台 | | | | | APP PLUS | 5+App | | MP | 微信小程序/支付宝小程序/百度小程序/头条小程序/QQ小程序 | | MP WEIXIN | 微信小程序 | | MP ALIPAY | 支付宝小程序 | | MP B...
学习
uniapp2025-07-05
记录uniapp键盘弹出页面上移
我们每次在做UNIAPP小程序和H5遇到输入框时,总会在测试的时候点击输入框弹出软键盘把页面往上移动,仔细翻读uniapp文档的时候发现了一个属性adjust position :Boolean类型,作用是键盘弹起时,是否自动上推页面 1.发现将adjust position属性设置为false。就可以了。前提是vue 页面 softinputMode不能是为 adjustResize 2.这个softinputMode属性在page....
学习
uniapp2024-12-13
还在为uniapp的app端tabbar页面闪烁闪白而发愁吗
概要 本文主要为uniapp的app端tabbar页面在切换另一个未缓存的tabbar页面时会发生闪白闪烁。这个根本原因是app端可以理解为多页面,你不去点击下一个tabbar页面,是不会去渲染的。但是渲染又要时间,就会存留这一瞬间的渲染间隙。 有人问:不是有预加载吗,把tabbar页面全都预加载一遍不就行了吗; 或者说tabbar页面不是有缓存吗,我直接开局先把所有tabbar页面加载一遍不就欧了。 思路 给根节点(也就是html节点...
学习
uniapp2024-09-20
uniapp微信开发合集,登录-支付-订阅消息
背景 uniapp很多小程序组件库、功能丰富,可以帮我们快速做开发。但是呢,这些组件库,缺了点儿跟微信业务直接相关的、比如怎么在微信里收钱、怎么让用户登录,还有怎么发订阅消息给他们。这些业务功能,组件库里都没有现成的。 所以啊,我自己动手,开发了一套微信业务组件合集,起了名字叫【uboxui】,专门解决这些问题。这样大家在做微信小程序的时候,就能更方便、更快捷地搞定这些业务上的事儿了。 功能合集 以下内容重点讲解实现思路,完整代码文末下...
学习
uniapp2024-09-19
uniapp vue3 微信小程序展示markdown
一、zero markdown view 首先是去dcolud插件市场逛 了一圈,发现兼容vue3并且下载数比较高的是这款,zero markdown view, 插件用起来比较方便,符合 组件模式, 导入 后直接使用即可。 参数支持自定义代码背景色(不建议修改)、以及主题色。 测试效果如下: 个人觉得主段落内容字号太大,行距太大,看起来不是很美观。 二、微信小程序原生插件tom 1、安装 第一步:下载源文件,那么可以git clone...
学习
评论
请登录后发表评论
去登录