【微信小程序之分包】

微信小程序之分包

什么是分包

分包指的是把一个完整小程序项目,按照需求划分为不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。

分包的好处

  1. 可以优化小程序首次启动的时间
  2. 在多团队共同开发时可以更好的解耦合作

分包前的结构图

分包前,小程序项目中的所有页面和资源都被打包在一起,导致整个项目体积过大,影响小程序首次启动的下载时间

分包后的结构图

分包hou,小程序由主包和多个分包组成:

------主包:一般只包含项目的启动页面或TabBar页面,以及所有分包都需要用到的一些公共资源

------分包:只包含当前分包有关的页面和资源

分包的加载规则

(1)在小程序启动时,默认会下载主包并启动主包内页面,TabBar页面需要放到主包中

(2)当用户进入分包内的某个页面时,客户端会把对应的分包下载下来,进行按需下载

分包的体积限制

小程序所有包的体积不能超过16M

单个包(主/分包)大小不能超过2M

使用分包

javascript 复制代码
{
 "subPackages": [
       {
          "root" :"pkgA" ,
          "pages" : [
              "pages/cat/cat",
              "pages/dog/dog"
          ]
          
      },
      {
        "root" :"pkgB" ,
        "pages" : [
            "pages/apple/apple",
            "pages/banana/banana"
        ]


      }



  ],
  }

打包原则

(1)小程序会按照subPackages的配置进行分包,subPackages之外的目录将被打包到主包中

(2)tabBar页面必须在主包里面

(3)分包之间不能相互嵌套

引用原则

(1)主包无法引用分包内的私有资源

(2)分包之间不能相互引用私有公告资源

(3)分包可以引用主包内的公告资源

独立分包

独立分包本质上也是分包,不过他可以独立于主包和其他分包单独运行,也就是说没有什么依赖,而普通分包不能,单独运行。

独立分包的配置方法

独立分包的引用原则

(1)独立分包不能引用主包中的公共资源

(2)主包无法引用独立包内的私有资源

(3)独立分包之间也不允许相互引用私有资源

(4)独立分包和普通分包之间,不能引用私有资源

分包预下载

在小程序进入页面时,由框架自动预下载可能需要的分包,从而提升进入后续分包页面时的启动速度

配置分包的预下载

分包预下载限制

------------一个分包的的预下载总大小不能超过2M

相关推荐
ღ᭄ꦿ࿐Never say never꧂33 分钟前
微信小程序 Button 组件 open-type 完全指南:从用户信息获取到客服分享的实战应用
spring boot·微信小程序·小程序·uni-app·vue3
2501_915106328 小时前
iOS 26 APP 性能测试实战攻略:多工具组合辅助方案
android·macos·ios·小程序·uni-app·cocoa·iphone
巨神峰SEO11 小时前
支付宝小程序 SEO 实战:鲜花送达类小程序抢占搜索流量指南
小程序·支付宝小程序排名优化·支付宝小程序seo·支付宝小程序排名·支付宝优化
凉辰12 小时前
微信小程序uni.request 返回值存在精度丢失问题
微信小程序·小程序
李慕婉学姐13 小时前
【开题答辩过程】以《基于微信小程序教学评价平台的设计与实现》为例,不会开题答辩的可以进来看看
微信小程序·小程序
计算机学姐13 小时前
基于微信小程序的垃圾分类管理系统【2026最新】
java·vue.js·spring boot·mysql·微信小程序·小程序·mybatis
weixin_lynhgworld16 小时前
剧本杀小程序系统开发:内容生态与商业模式的双轮驱动
大数据·小程序
博客zhu虎康16 小时前
微信小程序报错 ubepected character `的style换行问题
微信小程序
计算机徐师兄16 小时前
Java基于SpringBoot的农场管理系统小程序【附源码、文档说明】
java·微信小程序·小程序·农场管理系统小程序·java农场管理系统小程序·java农场管理系统微信小程序·农场管理微信小程序
00后程序员张16 小时前
iOS混淆与IPA文件加固全流程实战 防止苹果应用被反编译的工程级方案
android·ios·小程序·https·uni-app·iphone·webview