Uni-app路由
来自CloudWiki
路由
uni-app页面路由为框架统一管理,开发者需要在pages.json里配置每个路由页面的路径和页面样式。类似的小程序在app.json中配置页面路由相同。所以uni-app的路由用法与Vue Router不同,如仍希望采用Vue Router方式管理路由,可在插件市场搜索Vue-Router。
pages.json:
"pages": [ //pages数组中第一项表示应用启动页,参考:https://uniapp.dcloud.io/collocation/pages { "path": "pages/index/index", "style": { "navigationBarTitleText": "uni-app" }, "style": { "navigationBarTextStyle": "white", // 导航栏标题颜色及状态栏前景颜色,仅支持 black/white,默认值:white "navigationBarTitleText": "页面自定义标题", // 导航栏标题文字内容 "navigationBarBackgroundColor": "#028939", // 导航栏背景颜色(同状态栏背景色),默认值:#F7F7F7 "backgroundColor": "#F8F8F8" // 下拉显示出来的窗口的背景色,默认值:#ffffff } } ,{ "path" : "pages/list/list", "style" : { "navigationBarTitleText": "", "enablePullDownRefresh": false } } ],
路由路由
uni-app有两种页面路由重定向方式:使用导航器组件扩展,调用API重定向。
页面栈
框架以栈的形式管理当前所有页面,当发生路由切换的时候,页面栈的表现如下:
路由方式 页面栈表现 触发时机 初始化 新页面入栈 uni-app:的第一个页面 :新页面 新页面入栈 调用API uni.navigateTo ,使用组件 <navigator open-type =“ navigate” /> 页面重启 当前页面出栈,新页面入栈 调用API uni.redirectTo ,使用组件 <navigator open-type =“ redirectTo” /> 页面返回 页面不断出栈,直到目标返回页 调用API uni.navigateBack ,使用组件 <navigator open-type =“ navigateBack” /> ,用户按左上角返回按钮,安卓用户点击物理后退键 标签切换 页面全部出栈,只留下新的标签页面 调用API uni.switchTab ,使用组件 <navigator open-type =“ switchTab” /> ,用户切换Tab 重加载 页面全部出栈,只留下新的页面 调用API uni.reLaunch ,使用组件 <navigator open-type =“ reLaunch” />