小程序如何分包 (Taro成功案例--原生微信小程序分包一致)

在编写小程序的时候,因为业务的拓展逻辑更加复杂,导致小程序体积越来越大,但是小程序是有体积限制的,微信小程序主包限制为2MB,虽然限制大小是对小程序启动速度的考虑,但是业务不能砍掉呀。只能用微信小程序提供分包来解决。

分包加载
某些情况下,开发者需要将小程序划分成不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。

在构建小程序分包项目时,构建会输出一个或多个分包。分包小程序必定含有一个主包,和多个分包。

主包:即放置默认启动页面/TabBar页面,以及一些所有分包都需用到公共资源/JS 脚本;
:TabBar 页面必须在 app(主包)内

分包:则是根据开发者的配置进行划分。

分包原理:在小程序启动时,默认会下载主包并启动主包内页面,当用户进入分包内某个页面时,客户端会把对应分包下载下来,下载完成后再进行展示。

目前小程序分包大小有以下限制

整个小程序所有分包大小不超过 8M
单个分包/主包大小不能超过 2M
对小程序进行分包,可以优化小程序首次启动的下载时间,以及在多团队共同开发时可以更好的解耦协作

如何在项目中进行分包
小程序官方文档指示 微信小程序分包

配置方法
假设支持分包的小程序目录结构如下

├── app.js
├── app.json
├── app.wxss
├── packageA
│   └── pages
│       ├── cat
│       └── dog
├── packageB
│   └── pages
│       ├── apple
│       └── banana
├── pages
│   ├── index
│   └── logs
└── utils

开发者通过在 app.json subpackages 字段声明项目分包。

{
  "pages":[
    "pages/index",
    "pages/logs"
  ],
  "subpackages": [
    {
      "root": "packageA", // 分包根目录
      "pages": [          // 分包下的页面路径,相对与分包根目录
        "pages/cat",
        "pages/dog"
      ]
    }, {
      "root": "packageB",
      "name": "pack2",   //分包别名,分包预下载(https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/preload.html)时可以使用
      "pages": [
        "pages/apple",
        "pages/banana"
      ]
    }
  ]
}

Taro项目进行分包(与微信小程序一致) 在src目录下app.jsx中进行配置
在这里插入图片描述

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值