一直懒得研究分包,结果还是躲不掉。
先说目录结构,按官方的来就好了,主包然后是分包,而且tabBar 页面必须在 app(主包)内
接着是pages.json,基本按官方给出的就好了,还是很简单
{
"pages": [{
"path": "pages/index/index",
"style": { ...}
}, {
"path": "pages/login/login",
"style": { ...}
}],
"subPackages": [{
"root": "pagesA",
"pages": [{
"path": "list/list",
"style": { ...}
}]
}, {
"root": "pagesB",
"pages": [{
"path": "detail/detail",
"style": { ...}
}]
}],
"preloadRule": {
"pagesA/list/list": {
"network": "all",
"packages": ["__APP__"]
},
"pagesB/detail/detail": {
"network": "all",
"packages": ["pagesA"]
}
}
}
配置preloadRule后,在进入小程序某个页面时,由框架自动预下载可能需要的分包,提升进入后续分包页面时的启动速度,这个没有用到,貌似不用配置也能用,不过为了性能还是配置上就好了
https://uniapp.dcloud.io/collocation/pages?id=subpackages
静态文件分包时候
在分包路径下新建static文件夹
将需要引用的文件放入
在页面引用/分包名/static/文件名