【微信小程序之分包】

微信小程序之分包

什么是分包

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

分包的好处

  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

相关推荐
zhiboshequ2 天前
Ai音视频对话在微信小程序端的技术实现方案
人工智能·微信小程序·live-pusher·live-player·音视频对话
小蒜学长2 天前
基于过程性评价的ai助学平台(代码+数据库+LW)
java·spring boot·后端·微信小程序·过程性评价
00后程序员张2 天前
无需 Mac 的 iOS App 上架工具,开心上架Appuploader 负责哪些环节
android·ios·小程序·https·uni-app·iphone·webview
2501_915909062 天前
Ipa Guard 防护上架,混淆、重签名和回归测试怎么做
android·ios·小程序·https·uni-app·iphone·webview
鸿蒙开发3 天前
# 代码写完才发现不能上线:微信小程序开发前必须准备的 8 件事
微信小程序·产品经理
李纲明3 天前
微信小程序 web-view 打开空白或提示未配置业务域名:校验文件、HTTPS 与跳转域名排查
前端·微信小程序·https·web-view·小程序开发·业务域名
济南壹软网络科技有限公司3 天前
盲盒源码系统小程序V6MAX底层架构解析,PHP+Uniapp高性能商用底座发布
小程序·架构·uni-app
2501_915918413 天前
iOS 上架注意事项有哪些?Appuploader 的四个阶段自查清单
android·ios·小程序·https·uni-app·iphone·webview
Autumn_ing3 天前
AI原型设计工具怎么选?可编辑原型与可运行前端适合什么场景
前端·小程序·产品经理·代码·codex·墨刀ai客户端·ai原型
fengGer的bugs3 天前
微信小程序实战:本地存储的新生儿喂养记录(原生 + 四套主题 + 疫苗日程)
微信小程序·小程序