小程式使用分包的示例程式碼
本文介紹了小程式使用分包的示例程式碼,分享給大家,具體如下:
官方文件:https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages.html
某些情況下,開發者需要將小程式劃分成不同的子包,在構建時打包成不同的分包,使用者在使用時按需進行載入。
總結就是小程式內所有程式碼圖片資源大小超過2M,此時就可以考慮建立分包,擴大小程式容量
目前小程式分包大小有以下限制:
- 整個小程式所有分包大小不超過 12M
- 單個分包/主包大小不能超過 2M
在小程式啟動時,預設會下載主包並啟動主包內頁面,當用戶進入分包內某個頁面時,客戶端會把對應分包下載下來,下載完成後再進行展示。
注意:TabBar所對應的頁面和一些公共的方法和資源必須放在主包,在主包頁面呼叫分包的元件或者方法都是不頂用的
使用分包
開發者通過在 app.jsonsubpackages
欄位宣告專案分包結構:
{ "pages": [ "pages/index/index","pages/logs/logs" ],"subpackages": [ { "root": "packageA","pages": [ "pages/index/index","pages/user/user" ] },{ "root": "packageB","pages/mall/mall" ] } ],"preloadRule": { "pages/index/index": { "network": "all","packages": [ "packageA" ] } },"window": { "backgroundTextStyle": "light","navigationBarBackgroundColor": "#fff","navigationBarTitleText": "WeChat","navigationBarTextStyle": "black" },"style": "v2","sitemapLocation": "sitemap.json" }
引用原則
packageA
無法 requirepackageB
JS 檔案,但可以 requireapp
、自己 package 內的 JS 檔案packageA
無法 importpackageB
的 template,但可以 requireapp
、自己 package 內的 templatepackageA
無法使用packageB
的資源,但可以使用app
、自己 package 內的資源
總結:分包之間的資源和程式碼不能相互引用,且主包不能呼叫分包的資源
分包預下載
開發者可以通過配置,在進入小程式某個頁面時,由框架自動預下載可能需要的分包,提升進入後續分包頁面時的啟動速度。對於獨立分包,也可以預下載主包。
分包預下載目前只支援通過配置方式使用,暫不支援通過呼叫API完成
preloadRule的 key
是頁面路徑,全路徑
獨立分包
獨立分包是小程式中一種特殊型別的分包,可以獨立於主包和其他分包執行。從獨立分包中頁面進入小程式時,不需要下載主包。當用戶進入普通分包或主包內頁面時,主包才會被下載。
開發者可以按需將某些具有一定功能獨立性的頁面配置到獨立分包中。當小程式從普通的分包頁面啟動時,需要首先下載主包;而獨立分包不依賴主包即可執行,可以很大程度上提升分包頁面的啟動速度。
一個小程式中可以有多個獨立分包。
官方文件在這兒:https://developers.weixin.qq.com/miniprogram/dev/framework/subpackages/independent.html
目前還沒用過獨立分包。對於到底在什麼情境下運用還不是很清楚
到此這篇關於小程式使用分包的示例程式碼的文章就介紹到這了,更多相關小程式使用分包內容請搜尋我們以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援我們!