小程序分包优化实践:解决主包过大和vendor.js体积问题
创作时间:
作者:
@小白创作中心
小程序分包优化实践:解决主包过大和vendor.js体积问题
引用
CSDN
1.
https://m.blog.csdn.net/LifeRiver/article/details/144831941
随着uniapp开发的小程序功能越来越复杂,主包的大小也逐渐增长,导致上传代码时遇到了2MB的限制。同时,由于微信小程序tabbar页面必须放在主包中,这进一步增加了主包的负担。为了提高用户体验并遵守平台规则,我们有必要采取一系列措施来优化小程序的打包结构,确保其符合性能和体积的要求。
小程序分包机制 (SubPackages)
小程序分包是一种将应用拆分为多个小部分的技术,它允许开发者将应用的不同部分独立打包,从而减少初次加载时间。通过合理配置 pages.json
文件中的 subPackages
字段,可以指定哪些页面属于分包,并且只在需要的时候才进行加载。这样不仅有助于控制主包的大小,还能加快非首屏页面的加载速度。
因小程序有体积和资源加载限制,各家小程序平台提供了分包方式,优化小程序的下载和启动速度。上传代码时,主包必须在2M以内。所谓的主包,即放置默认启动页面/TabBar 页面,以及一些所有分包都需用到公共资源/JS 脚本;而分包则是根据 pages.json
的配置进行划分。
pages.json 页面配置
{
"pages": [
// 主包页面路径
],
"subpackages": [
{
"root": "subpackagePath", // 分包根目录
"pages": [
// 分包内页面路径
]
}
]
}
manifest.json 中小程序配置
"optimization": {
"subPackages": true
},
依赖分析
在优化过程中,了解项目构建输出的具体情况是非常重要的。通过依赖分析工具开发者可视化打包后的输出文件结构,可以看到各个模块的大小、依赖关系等信息,这对于诊断性能瓶颈、减少包体积以及优化加载时间非常有帮助。
- 通过微信开发者工具进行依赖分析,及分包大小查看。
- 通过
rollup-plugin-visualizer
插件查看vendor.js
依赖
- 安装:
npm install rollup-plugin-visualizer --save-dev
- 配置示例:
import visualizer from 'rollup-plugin-visualizer';
build: {
rollupOptions: {
plugins: [
visualizer({
filename: './dist/stats.html', // 定义输出文件位置
open: true, //自动打开浏览器查看
}),
],
},
},
主包大小优化方案
- 资源外部化: 对于图片、图标等静态资源,考虑将其上传至 OSS 服务。还可以利用在线工具如TinyPNG进行压缩处理,以减小文件尺寸。
- 减少第三方库依赖: 检查项目中使用的第三方库,尽量选择轻量级版本,如 lodash、qs、dayjs。
- 依赖分包:把
node_modules
中的单独依赖放到对应子包中,如 gesti。避免所有页面都加载不必要的代码。 - 样式表瘦身: 在
uni.scss
或App.vue
中导入全局样式时,要谨慎选择必要的样式规则,去除不再使用的样式定义,尤其是批量生成或来自大型UI框架的样式文件。 - 组件库精简: 如果同时依赖了多个组件库,建议保留一个主要的UI框架或优先使用其中一个,以减少重复代码的引入。
- 特定组件优化:如 uCharts 等,可修改其源码仅保留需要的功能。
结语
通过对小程序分包策略的理解和实际操作,结合有效的依赖分析工具以及针对性的优化措施,我们可以显著降低主包的体积,改善应用的整体性能。希望上述方法能够给正在面临类似挑战的开发者带来启发,并助力创建更加高效的小程序体验。
热门推荐
揭秘微信登录机制:一探多设备同步在线的可能性
阳光、沙滩、海水……珠海的悠闲生活,让你一秒爱上这座城!
探秘十三朝古都的时光印记——洛阳博物馆游览指南
冬季黄山自驾游攻略:北京出发
杜牧《旅宿》:夜不能寐的孤独与乡愁
苏轼的失眠之夜:诗意与孤独
嘴角两边的口周纹推荐的去除方法:健康饮食/适度运动/医美手段/术后护理多味改善
大年初二回娘家,如何增进家庭感情?
正月十五元宵节的来历及习俗
超级火山爆发,地球会变成大冰箱吗?
超级火山预警系统揭秘:如何预测灾难?
超级火山喷发真的会让地球变冷吗?
糯米白醋选购指南:营养价值、口感与使用场景全解析
代币是什么意思?代币种类有哪些?
冬季储存糯米白醋的小妙招
糯米白醋:低钠高营养的健康调味品
秋冬养生新宠:糯米白醋的神奇妙用
广州十大特产,哪些特产最值得带回家?
冬日温岭石塘:海鲜美食与迷人海景的完美邂逅
女明星必备:饰品搭配全攻略
【专题报告】我国外汇风险管理方法和工具浅研
胡先生的教训:聚餐时如何避免鱼刺卡喉?
轻松搞定鲫鱼刺,喝汤更安心!
赵今麦飞天奖红毯造型获赞:清新亮眼成最大赢家
赵丽颖的公益之路:从明星到爱心大使
梭边鱼怎么做、梭边鱼怎么做好吃
天涯区征地款引发兄妹争端:如何维护亲情?
从搞笑节目中挖掘优秀影视作品:机遇与挑战
白米醋的神奇功效与使用指南
酿造白醋:你真的会挑吗?