小程序中实现页面导航的两种方式
声明式导航
在页面上声明一个<navigator>导航组件
通过点击<navigator>组件实现页面跳转
1.导航到tabBar页面
tabBar 页面指的是被配置为tabBar的页面。
在使用<navigator>组件跳转到指定的 tabBar页面时,需要指定url属性和open-type属性,其中:
url表示要跳转的页面的地址,必须以 / 开头
open-type表示跳转的方式,必须为switchTab
示例代码如下:

<navigator url="/pages/message/message" open-type= "switchTab">导航到消息页面</navigator >
2.导航到非tabBar页面
非tabBar 页面指的是没有被配置为tabBar的页面。
在使用<navigator>组件跳转到普通的非 tabBar页面时,则需要指定url属性和open-type属性,其中:
url表示要跳转的页面的地址,必须以/开头
open-type表示跳转的方式,必须为navigate
示例代码如下:

<navigator url="/pages/info/info" open-type="navigate">导航到 info页面</navigator>
<navigator url="/pages/info/info" >导航到 info页面</navigator>
3.后退导航
如果要后退到上一页面或多级页面,则需要指定open-type属性和 delta属性,其中:
open-type的值必须是 navigateBack,表示要进行后退导航
delta 的值必须是数字,表示要后退的层级
示例代码如下:

<navigator open-type="navigateBack" delta="1">返回上一页</navigator>
注意:为了简便,如果只是后退到上一页面,则可以省略delta属性,因为其默认值就是1。
<navigator open-type="navigateBack" >返回上一页</navigator>
编程式导航
1.导航到tabBar页面
调用wx.switchTab(Object object)方法,可以跳转到tabBar页面。其中Object参数对象的属性列表如下

代码示例:

<button bindtap="onMessage">跳转message页面</button>
// 通过编程式导航跳转到tabBar页面,跳转message页面
onMessage(){
console.log(123);
wx.switchTab({
url: '/pages/message/message',
})
},
2.导航到非tabBar页面
示例代码如下:

3.后退导航
示例代码如下:
1.声明式导航传参
navigator组件的url属性用来指定将要跳转到的页面的路径。同时,路径的后面还可以携带参数:
参数与路径之间使用?分隔
参数键与参数值用=相连
不同参数用&分隔
代码示例如下:

2.编程式导航传参
调用wx.navigateTo(Object object)方法跳转页面时,也可以携带参数,代码示例如下:

浙公网安备 33010602011771号