欢迎来到我的博客
📔博主是一名大学在读本科生,主要学习方向是前端。
🍭目前已经更新了【Vue】、【React–从基础到实战】、【TypeScript】等等系列专栏
🛠目前正在学习的是🔥 R e a c t / 小程序 React/小程序 React/小程序🔥,中间穿插了一些基础知识的回顾
🌈博客主页👉codeMak1r.小新的博客
本文被专栏【小程序|原力计划】收录
🕹坚持创作✏️,一起学习📖,码出未来👨🏻💻!
上篇文章详细讲解了微信小程序的首页布局案例的实现,这篇文章将带领大家学习的是小程序的「路由导航」
页面导航指的是页面之间的相互跳转。例如,浏览器中实现页面导航的方式有如下两种:
- < a >链接
- loaction.href
声明式导航
导航组件
组件实现页面跳转编程式导航
tabBar页面指的是被配置为tabBar的页面。比如在上一篇文章的首页布局案例中,我们的tabBar页面指的是
【首页、消息页、联系我们页】
在使用
组件跳转到指定的tabBar页面时,需要指定url属性和open-type属性,其中:
- url表示要跳转的页面的地址,必须以 / 开头;
- open-type 表示跳转的方式,必须为 switchTab
<navigator url="/pages/message/message" open-type="switchTab">导航到消息页面navigator>
非tabBar页面指的是没有被配置为tabBar的页面。
基于上一篇文章中的首页布局案例,我又新创建了一个新的info页面,并且不将其添加到tabBar节点中。
在使用
组件跳转到非tabBar页面时,需要指定url属性和open-type属性,其中:
- url表示要跳转的页面的地址,必须以 / 开头;
- open-type 表示跳转的方式,必须为 navigate。
<navigator url="/pages/info/info" open-type="navigate">导航到info页面navigator>
open-type
属性默认值即为navigate
,此方式跳转的navigator
组件的open-type属性可以省略。
如果要后退到上一页面或多级页面,则需要指定open-type属性和delta属性,其中:
- open-type的值必须是
navigateBack
,表示要进行后退导航;- delta的值必须是数字,表示要后退的层级。
<navigator open-type="navigateBack" delta='1'>返回上一页navigator>
delta
属性默认值即为1,只需要后退一个页面时,可以省略delta
。
调用
wx.switchTab(Object object)
方法,可以跳转到tabBar页面。其中,Object参数对象的属性列表如下:
属性 | 类型 | 是否必选 | 说明 |
---|---|---|---|
url | string | 是 | 需要跳转的tabBar页面的路径, 路径后不能带参数 |
success | function | 否 | 接口成功调用的回调 |
fail | function | 否 | 接口调用失败的回调 |
complete | function | 否 | 接口调用结束的回调, (调用成功、失败都会执行) |
// 页面结构
<button bindtap="gotoMessage">跳转到消息页面button>
// 编程式导航 -- 跳转到消息页面
gotoMessage() {
wx.switchTab({
url: '/pages/message/message',
})
},
调用
wx.navigateTo(Object object)
方法,可以跳转到非tabBar页面。其中,Object参数对象的属性列表如下:
属性 | 类型 | 是否必选 | 说明 |
---|---|---|---|
url | string | 是 | 需要跳转的非tabBar页面的路径, 路径后不能带参数 |
success | function | 否 | 接口成功调用的回调 |
fail | function | 否 | 接口调用失败的回调 |
complete | function | 否 | 接口调用结束的回调, (调用成功、失败都会执行) |
// 页面结构
<button bindtap="gotoInfo">跳转到Info页面button>
// 编程式导航 -- 跳转到info页面
gotoMessage() {
wx.navigateTo({
url: '/pages/info/info',
})
},
调用
wx.navigateBack(Object object)
方法,可以返回上一页面或多级页面。其中,Object参数对象的属性列表如下:
属性 | 类型 | 是否必选 | 说明 |
---|---|---|---|
delta | number(默认为1) | 否 | 返回的页面数, 如果delta大于现有的页面数,则返回首页 |
success | function | 否 | 接口成功调用的回调 |
fail | function | 否 | 接口调用失败的回调 |
complete | function | 否 | 接口调用结束的回调, (调用成功、失败都会执行) |
// 页面结构
<button type="primary" bindtap="goBack">后退button>
goBack() {
wx.navigateBack()
},