首页 > 编程知识 正文

小程序 分包,小程序分包之后怎么跳转

时间:2023-05-05 17:19:09 阅读:189235 作者:4653

1 .分包为什么使用分包

第一版小程序的代码包的大小不能超过1MB。 因此,小程序可以在秒内打开,但随着业务的发展,整个小程序的分包大小都在8M以下,8M无法在秒内打开,所以发出分包加载。

对于小程序而言

整个小程序的分包大小不超过8M

分包/主包装的尺寸不能超过2M

在applet启动时,缺省情况下将下载主包,并启动主包中的页面

当用户进入分包内的某个页面时,客户端会下载相应的分包,下载完成后进行展示。

分包支持的版本

现在支持微信客户端6.6.0、基础库1.7.3或更高版本。 开发者工具请使用1.01.1712150版或以上

转载: https://www.Jian Shu.com/p/e 51316 e15 a6a

2 .小程序分包步骤step1:

添加项目目录

APP.js

APP.JSON

app.wxss

packageA

() pages

() ) cat

() dog

packageb

() pages

() )苹果

() banana

pages

() )索引

() logs

( utils

step2:

将分包目录添加到app.json中的目录结构中(可以是subpackages或subpackages )

{ 'pages':[ 'pages/index ',' pages/logs' ],' sub packages ' : [ { ' root ' : ' packagea ',' pages ]

step3:

分包结构

子包的构成项目如下

根字符串分包途径

name String分包别名,分包预下载时可用

pages StringArray分包页面的路径、相对路由和分包路由

独立布尔分包是否为独立分包

打包规则

2 .声明subpackages将按subpackages配置路径打包,2.subpackages配置路径打包为分包,其他打包在app (主包)中

3.app (主软件包)还可以具有其自己的pages或最外层pages字段

4.subpackage的根目录不能是另一个subpackage中的子目录

5.tabBar页面必须位于APP (主包)中

6 .虽然每个分包都可以使用自己分包中的资源,或者引用require app中的资源,但是分包与分包之间不能通信,分包与主包下的页面中的内容也不能通信。 (

分包提前下载基础库2.3.0并开始支持,低版本需要兼容处理。 可以使用1.02.1808300或更高版本从此下载开发人员工具。

目前只支持通过配置方式使用,暂不支持通过调用API完成

通过配置,框架可以在进入小程序所在的页面时自动预下载可能需要的分包,并在进入后续分包页面时提高启动速度。

配置方法

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

{ 'pages': ['pages/index'],' sub packages ' : [ { ' root ' 3360 ' important ',' pages ' 3360 [ ' index ] ] ' root': 'path/to ',' pages': ['index'] ' ] } { ' root ' : ' indep ',' pages ' : [ ' index ',},} ' preload rule ' : { ' pages/' pages } ' packages ' : [ ' important ' ] },' sub1/index ' : { ' packages ' :

key是页面路径,value是用于访问此页面的预下载配置

packages的value为StringArray类型,表示进入页面后预先下载分包的root或name。 APP代表主包

network表示string类型的默认值为“‘wifi’”,表示已在指定网络上预先下载。

选项的值为

all:无限网络

wifi:仅在wifi上下载

同一分包内的页面有通用的预下载大小限额2M,一个分包内的所有页面加起来只有2M的预下载。 限额在用工具包装时会被检查。

独立承包以上配置

支持微信客户端6.7.2、基础库2.3.0或更高版本。 可以使用1.02.1808300或更高版本从此下载开发人员工具。

1 .从独立承包页面进入小程序时,不需要下载主包。

2 .从普通分包页面进入小程序时,首先下载主包

优点:提高分包页面的启动速度。

小程序游戏不支持独立分包。

配置方法

{ 'pages': [ 'pages/index ',' pages/logs' ],' sub packages ' : [ { ' root ' : ' modulea ',' pages '

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。