微信小程序中的分包使用介绍

一、分包的好处

可以优化小程序首次启动的下载时间

在多团队共同开发时可以更好的解耦协作

主包:放置默认启动页面/TabBar 页面,公共资源/JS 脚本

分包**:**根据开发者的配置进行划分

限制:所有分包大小不超过 20M,单个分包/主包大小不能超过 2M

二、分包的目录和配置

在 app.json 中新建"subpackages",结构如图,写好后保存就行,图片的左右是对应的

左边是页面,右边是配置

subpackages:表示分包,里面存放数组,可以放多个分包

root:分包根目录

name:分包别名,分包预下载时可以使用

pages:分包页面路径(用数组存放多个页面)

independent:设置独立分包

另外再抄一份分包的配置代码

XML 复制代码
 "subpackages": [
    {
      "root": "pkgA",
      "name": "p1",
      "pages": [
        "pages/cat/cat",
        "pages/dog/dog"
      ]
    },
    
    {
      "root": "pkgB",
      "name": "p2",
      "pages": [
        "pages/apple/apple"
      ],
      "independent": true
    }
  ]

三、分包的限制

分包之间不能 require JS 文件, template,资源

分包可以使用主包的 JS 文件, template,资源

四、独立分包

1、独立分包特点

可以独立于主包和其它分包,独自运行

从独立分包进入小程序时,不需要下载主包

一个小程序可以有多个独立分包

2、配置方法

app.jsonsubpackages字段中对应的分包配置项中定义independent字段

限制:

独立分包不能依赖主包和其它分包的资源

主包中的 app.wxss 对独立分包无效

五、分包预下载

预下载分包行为在进入某个页面时触发,进入此页面后,下载指定分包的内容。

通过在 app.json 增加 preloadRule 配置来控制。

packages:进入页面后预下载分包的 rootname__APP__ 表示主包。

network:all: 不限网络 wifi: 仅wifi下

限制:

同一个分包中的页面享有共同的预下载大小限额 2M,限额会在工具中打包时校验。

如,页面 A 和 B 都在同一个分包中,A 中预下载总大小 0.5M 的分包,B中最多只能预下载总大小 1.5M 的分包。

六、总结

只是一个配置文件,会抄就行,没什么难的,除非你想背下来

相关推荐
白菜__9 分钟前
去哪儿小程序逆向分析(酒店)
前端·javascript·爬虫·网络协议·小程序·node.js
我命由我1234534 分钟前
微信小程序 bind:tap 与 bindtap 的区别
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
2501_915921432 小时前
Fiddler抓包工具详解,HTTPHTTPS调试、代理配置与接口分析实战教程
服务器·ios·小程序·fiddler·uni-app·php·webview
我命由我123453 小时前
微信小程序 - 页面跳转并传递参数(使用路由参数、使用全局变量、使用本地存储、使用路由参数结合本地存储)
开发语言·前端·javascript·微信小程序·小程序·前端框架·js
00后程序员张3 小时前
数据流抓包实战指南,TCPUDP 流量分析、HTTPS 解密与多工具协同方案
网络协议·http·ios·小程序·https·uni-app·iphone
2501_915921433 小时前
iOS 性能分析工具全景解析,构建从底层诊断到真机监控的多层级性能分析体系
android·ios·小程序·https·uni-app·iphone·webview
2501_915909063 小时前
如何防止 IPA 被反编译,从攻防视角构建一套真正有效的 iOS 成品保护体系
android·macos·ios·小程序·uni-app·cocoa·iphone
毕设源码-邱学长4 小时前
【开题答辩全过程】以 基于微信小程序的社区老年人活动中心信息管理系统的设计与实现 为例,包含答辩的问题和答案
微信小程序·小程序
2501_916007474 小时前
专业的 IPA 处理工具 构建可维护、可回滚的 iOS 成品加工与加固流水线
android·ios·小程序·https·uni-app·iphone·webview