⚠️注意:跳转到 tabBar 页面只能使用 switchTab 跳转
保留当前页面,跳转到应用内的某个页面
,使用uni.navigateBack()
可以返回到原页面。uni.navigateTo({
url: '../test/test'
});
// 注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码
// 此处是A页面
uni.navigateTo({
url: 'B?id=1'
});
// 此处是B页面
uni.navigateTo({
url: 'C?id=1'
});
// 在C页面内 navigateBack,将返回A页面
uni.navigateBack({
delta: 2
});
uni.redirectTo({
url: 'test?id=1'
});
关闭所有页面
,打开到应用内的某个页面uni.preloadPage(OBJECT)
不会关闭,仅触发生命周期 onHide
uni.reLaunch({
url: '../login/login'
});
uni.preloadPage(OBJECT)
(opens new window)不会关闭,仅触发生命周期 onHide
uni.switchTab({
url: '/pages/index/index'
});
//父页面跳转携带参数,uni.reLaunch()都是一样的方法
uni.navigateTo({
url: 'test?id=1&name=peng'
});
// 子页面取参
onLoad: function (option) { //option为object类型,会序列化上个页面传递的参数
console.log(option.id); //打印出上个页面传递的参数。
console.log(option.name); //打印出上个页面传递的参数。
}
总结所有页面跳转方法的注意事项:
非 tabBar
页面。reLaunch
可以打开任意页面
。App.vue
里面进行页面跳转。H5端页面刷新之后页面栈会消失
,此时navigateBack不能返回,如果一定要返回可以使用history.back()导航到浏览器的其他历史记录。