路由跳转
原创2026/3/5大约 1 分钟
navigateTo
保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。
提示
程序中页面栈最多十层
可以从 pageA 页面通过点击事件跳转到 pageB 页面
wxml
<view>PageA</view> <button type="primary" bindtap="clickTapButton">跳转到PageB</button>ts
Page({
clickTapButton(e) {
wx.navigateTo({
url: '/pages/pageB/pageB',
})
},
})携带参数
pageA
Page({
clickTapButton(e) {
wx.navigateTo({
url: '/pages/pageB/pageB?name=jiamei',
})
},
})pageB
Page({
onLoad(options) {
console.log(options.name)
},
})navigateBack
关闭当前页面,返回上一页面
wx.navigateBack()
wx.navigateBack({
url: '/pages/pageA/pageA',
})redirectTo
关闭当前页面,跳转到应用内的某个页面。但是不允许跳转到 tabbar 页面
redirectTo 和 navigateTo 最大的区别就是前者无法在返回之前的页面,也就是在页面栈中不存在之前的页面了
wxml
<view>PageA</view> <button type="primary" bindtap="clickTapButton">跳转到PageB</button>ts
Page({
clickTapButton(e) {
wx.redirectTo({
url: '/pages/pageB/pageB?name=jiamei',
})
},
})reLaunch
关闭所有页面,打开到应用内的某个页面
Page({
backHandle() {
wx.reLaunch({
url: '/pages/pageC/pageC',
})
},
})switchTab
跳转到 tabBar 页面,并关闭其他所有非 tabBar 页面
Page({
clickHandle() {
wx.switchTab({
url: '/pages/pageA/pageA',
})
},
})警告
/pages/pageA/pageA必须已经在 app.json 里的 tabbar 属性中进行了配置
至此,本章节的学习就到此结束了,如有疑惑,可对接技术客服进行相关咨询。