某些情況下,開發(fā)者需要將小程序劃分成不同的子包,在構(gòu)建時(shí)打包成不同的分包,用戶在使用時(shí)按需進(jìn)行加載。
在構(gòu)建小程序分包項(xiàng)目時(shí),構(gòu)建會(huì)輸出一個(gè)或多個(gè)分包。每個(gè)使用分包小程序必定含有一個(gè)主包。所謂的主包,即放置默認(rèn)啟動(dòng)頁面/TabBar 頁面,以及一些所有分包都需用到公共資源/JS 腳本;而分包則是根據(jù)開發(fā)者的配置進(jìn)行劃分。
在小程序啟動(dòng)時(shí),默認(rèn)會(huì)下載主包并啟動(dòng)主包內(nèi)頁面,當(dāng)用戶進(jìn)入分包內(nèi)某個(gè)頁面時(shí),客戶端會(huì)把對應(yīng)分包下載下來,下載完成后再進(jìn)行展示。
目前小程序分包大小有以下限制:
對小程序進(jìn)行分包,可以優(yōu)化小程序首次啟動(dòng)的下載時(shí)間,以及在多團(tuán)隊(duì)共同開發(fā)時(shí)可以更好的解耦協(xié)作。
使用分包(建議主包添加跳轉(zhuǎn)路徑,分包放內(nèi)容)
在app.json配置"subpackages"
在pages同級目錄新建文件夾以及文件
1 2 3 4 5 6 7 8 9 |
打包原則 聲明 subpackages 后,將按 subpackages 配置路徑進(jìn)行打包,subpackages 配置路徑外的目錄將被打包到 app(主包) 中 app(主包)也可以有自己的 pages(即最外層的 pages 字段) subpackage 的根目錄不能是另外一個(gè) subpackage 內(nèi)的子目錄 tabBar 頁面必須在 app(主包)內(nèi) 引用原則 packageA 無法 require packageB JS 文件,但可以 require app、自己 package 內(nèi)的 JS 文件 packageA 無法 import packageB 的 template,但可以 require app、自己 package 內(nèi)的 template packageA 無法使用 packageB 的資源,但可以使用 app、自己 package 內(nèi)的資源 |
簡述就是:
1.首先要配置好打包路徑
2.其次subpageage的根目錄不能再包含subpageage目錄
3.tabBar頁面,例如pages/index/index,pages/logs/logs必須在主包內(nèi)