页面导航就是指页面之间的一个跳转
Web网页端
微信小程序
使用<navigator>
组件跳转到指定的tabBar页面
/
开头,标识要跳转的页面地址switchTab
,表示跳转到tabBar的方式XXX.wxml
文件<navigator url="/pages/message/message" open-type="switchTab">导航到消息页面</navigator>
依旧是使用<navigator>
组件。
navigate
,也可以不写,默认表示跳转非tabBar页面的方式XXX.wxml
文件<navigator url="/pages/info/info" open-type="navigate">导航到信息页面</navigator>
使用<navigator>
组件
1
<navigator open-type="navigateBack" delta="1">返回上一页</navigator>
home.wxml
<button bindtap="gotoMessage">跳转到message页面</button>
home.js
//通过编程式导航跳转到tabBar页面 gotoMessage(){ wx.switchTab({ url: '/pages/message/message', }) },
home.wxml
<button bindtap="gotoInfo">跳转到info页面</button>
home.js
gotoInfo(){ wx.navigateTo({ url: '/pages/info/info', }) },
info.wxml
<button bindtap="gotoBack">后退</button>
info.js
gotoBack(){ wx.navigateBack({ delta: 1, }) },
<navigator>
组件的url属性可以用来指定要跳转的页面路径,并且可以在该路径后面携带参数,格式如下:
?
分隔=
相连&
分隔点击微信开发者工具左下角的页面参数
home.wxml
<navigator url="/pages/info/info?name=zs&age=20">导航并传参给info页面</navigator>
home.wxml
<button bindtap="gotoInfo2">跳转到info页面</button>
home.js
gotoInfo2(){ wx.navigateTo({ url: '/pages/info/info?name=ls&age=18', }) },
通过声明式导航传参或编程式导航传参所携带的参数,可以直接在onLoad事件中直接获取到
info.js
:直接通过options
获取即可
/** * 生命周期函数--监听页面加载 */ onl oad(options) { console.log(options) },
info.js
/** * 页面的初始数据 */ data: { //导航传递过来的空对象 query:{} }, onl oad(options) { console.log(options) this.setData({ query:options }) },
点击AppData看跳转传的参数