跳转到内容

小程序的 7 个优化技巧:主包体积从 2M 压缩至 500KB !

随着小程序不断地更新迭代,2M 的主包体积上限基本就不够用了。正确利用分包加载机制能够突破小程序的体积上限,提升用户的使用体验。

小程序的包体积的限制:

  • 主包:<= 2M
  • 单个分包:<= 2M
  • 总包:<= 20M

本文将结合微信官方文档规则,深入解析这 7 个分包优化小技巧,帮你对主包体积压缩至 500 KB 以下。

✅ 技巧 1:图片瘦身

这无疑是最大程度减小代码体积的有效途径之一:

  • 本地图片、图标,压缩率通常可达 80%以上
  • 展示类图片直接放 OSS

压缩工具推荐:TinyPNG

✅ 技巧 2:移除“僵尸代码”

清理项目中过期的页面、组件、JS、CSS,这部分“僵尸代码”不可小觑,往往都会占据 10% ~ 30% 不等的体积。

借助微信开发者工具的代码静态依赖分析功能,查看代码包到文件结构与依赖关系,移除无用代码资源。

✅ 技巧 3:按需注入

  • 仅注入当前访问页面所需要的自定义组件和页面代码。
json
// app.json 配置示例
{
  "lazyCodeLoading": "requiredComponents"
}
  • 合理利用代码的Tree Shaking能力,避免全量引入模块代码。

✅ 技巧 4:分包预加载

在当前页面,自动预加载“可能要用到的分包”,提升后续分包页面的启动速度

json
"preloadRule": {
  "pages/index": {
    "network": "all",
    "packages": ["important"]
  },
}

上面代码表示:在进入pages/index页面时预加载important分包

✅ 技巧 5:独立分包

广告页、活动页、支付页等低频、且比较独立的模块,强烈建议使用独立分包

json
{
  "subPackages": [
    {
      "root": "activity",
      "pages": ["pages/pineapple"],
      "independent": true // 关键参数!
    }
  ]
}

优势:可“直接使用”,不需要加载主包资源。

✅ 技巧 6:避免全局自定义组件

全局引用的组件和插件,会包含在主包中,增加主包体积,同时也会影响启动耗时。

建议:应尽量避免使用全局的自定义组件或插件。

✅ 技巧 7:开启上传时压缩

在开发者工具中勾选:

详情 → 本地设置 → 上传时自动压缩

开启后:将再度减少小程序的代码体积。

总结

通过以上 7 个优化技巧,将主包体积优化至 500 KB 是完全可行的。

关键在于:合理利用微信小程序的分包机制,再结合其他方面的优化,再复杂的小程序也能控制好主包体积,保证启动速度。