1.分包
简介:
某些情况下,开发者需要将小程序划分成不同的子包,在构建时打包成不同的分包,用户在使用时按需进行加载。
在构建小程序分包项目时,构建会输出一个或多个分包。每个使用分包小程序必定含有一个主包。
所谓的主包,即放置默认启动页面/TabBar页面,以及一些所有分包都需用到公共资源/JS 脚本;而分包则是根据开发者的配置进行划分。
在小程序启动时,默认会下载主包并启动主包内页面,当用户进入分包内某个页面时,客户端会把对应分包下载下来,下载完成后再进行展示。
目的: 对小程序进行分包,可以优化小程序首次启动的下载时间,以及在多团队共同开发时可以更好的解耦协作。
步骤:
在项目中,把 tabBar 相关的 4 个页面放到主包中,其它页面(例如:商品详情页、商品列表页)放到分包中。在 uni-app
项目中,配置分包的步骤如下:
1. 在项目根目录中,创建分包的根目录,命名为 `subpkg`
2. 在 `pages.json` 中,和 `pages` 节点平级的位置声明 `subPackages` 节点,用来定义分包相关的结构:
{
"pages": [
{
"path": "pages/home/home",
"style": {
}
},
{
"path": "pages/cate/cate",
"style": {
}
},
{
"path": "pages/cart/cart",
"style": {
}
},
{
"path": "pages/my/my",
"style": {
}
}
],
"subPackages": [
{
"root": "subpkg",
"pages": []
}
]
}
2.路由跳转
uniapp 采用了 微信小程序的路由系统 ,分为两种:
标签跳转 navigator
编程跳转 uni.navigateTo()
<!-- 1、标签方式跳转 -->
<navigator url="../details/details">跳转到详情页</navigator>
<!-- 2、编程方式跳转 -->
<button type="primary" @click="godetail">跳转到详情页</button>
<script>
export default {
methods: {
godetail(){
//快捷方式:unav
uni.navigateTo({
url: '../details/details',
});
}
}
};
</script>