分包(微信小程序)

首先,微信小程序中使用分包是为了减少首屏的请求,因为微信小程序会默认下载主包内的内容并展示到页面上,但是随着业务量的增加,代码量也会越来越大。会导致我们启动小程序的时候首页加载速度过慢的这个问题。这时我们就可以采用分包技术来解决首次加载速度慢的这个问题。进行一个按需加载。

微信小程序中的pages就是主包

但是分包也有一定的限制

(1)小程序要求压缩包体积不能大于2M,否则无法发布

(2)实际开发中小程序体积如果大于2M就需要使用分包机制进行发布上传

(3)分包后可解决2M限制,并且能分包加载内容,提高性能

(4)分包后单个包的体积不能大于2M

(5)分包后所有的包的体积不能大于20M

需要注意的是,taBbar内只能写主包对应的一些路由,那么如果我们想要访问分包内的内容时,我们可以进行一个点击事件,进行一个页面跳转。

分包流程:

一,查看本地代码的内存

点击详情--->本地代码--->代码依赖分析 我们可以清晰的看到每个文件所占用的内存是多少

二,分包目录

在pages(主包)的同级目录下创建一个新的文件夹为packageA,packageA就是我们所创建的分包,然后再app.json内在subPackages下进行配置分包的目录。

分包一般对文件目录的严格不太强,所以可以根据自己的一个习惯去进行配置。

配置分包目录有四个配置项:

这样一个分包就已经成功了

一般情况下 我们使用的都是普通分包

普通分包是子包可以用主包中的资源的,但是当我们添加了一个indepentent为true时,我当前的分包可以称为自己一个独立的一个分包,就是不会再去使用主包内的资源。

小程序的打包原则并不是我们使用了什么就打包什么,而是我们放了什么就会打包什么,所以现在就有一个问题,我怎么样才可以只将使用的资源进行一个打包。从而减少包的体积。

那么这个时候我们就需要手动的引入我们所需要的一些资源。(子包当中是没有全局这个概念的)

三,分包预下载

分包预下载就是我们可以先判断那个分包被点开的可能性会高,如果预测到这种情况,那么我们就可以去想,如果我的首页加载完之后有空余的时间,那我是不是就可以先把这个分包给下载出来,那么等用户再次点击的时候,原来需要花5秒,那么现在就仅需要1秒就可以了。

分包预下载我们使用的是preloadRule 注意:分包预下载是对象{},而分包是数组【】

例如:当我访问pages/index/index这个路径的页面时,会下载我list中的内容,list则是我分包的一个别名。

这时控制台会(以下图),就表示成功了

相关推荐
极限挑战哥1 天前
共享电单车联营平台分账架构实践:二清合规与自动分账零人工方案
java·大数据·人工智能·微信小程序·架构·微信公众平台
超级新零售1 天前
服装订货会数字化:商品版本、订单状态与后续配发数据如何衔接?
大数据·小程序·企业微信
云-缩影1 天前
拆解微信小程序后端架构:ECS、RDS、SSL 和 VPC 怎么配合
微信小程序·架构·ssl
拖孩1 天前
AI 帮我写的小程序上线 44 天:36 个人进了收银台,8 个人付钱
前端·后端·微信小程序
xiezhr2 天前
我用workBuddy开发了自己的第一个小程序并成功上线了
ai·小程序·ai agent·workbuddy
sinat_267611912 天前
用 AI 开发微信小程序(八):一个极简收纳工具的开发复盘
微信小程序·小程序
李纲明2 天前
微信小程序真机预览白屏或 request 失败:先核 request 合法域名与 TLS,再查体验版与本地缓存
缓存·微信小程序·小程序·小程序开发·devdiy·真机预览·合法域名
klfdgl2 天前
线上商城小程序投入测算,有成熟开发经验服务商的长期收益对比
小程序
一木 之林3 天前
Dify学习笔记 03 · RAG检索增强生成:三代范式、评估与落地(第40-45、55-56集)
笔记·小程序·交互·dify