微信小程序开发笔记 – 路由导航()-其他
微信小程序开发笔记 – 路由导航()
路由导航
- 路由导航1. 声明式路由导航1.1 声明式后退导航1.2 声明式导航传参2. 编程式路由导航2.1 编程式后退导航2.3 编程式导航传参
- 1. 声明式路由导航1.1 声明式后退导航1.2 声明式导航传参
- 1.1 声明式后退导航
- 1.2 声明式导航传参
- 2. 编程式路由导航2.1 编程式后退导航2.3 编程式导航传参
- 2.1 编程式后退导航
- 2.3 编程式导航传参
1. 声明式路由导航
navigator标签被用于声明式路由导航
- url表示要跳转的页面地址,必须以/开头
- open-type表示跳转的方式,如果跳转的页面为tabBar页面,该属性必须为switchTab
<navigator url="/pages/info/info">导航到info页面</navigator>
<navigator url="/pages/message/message" open-type="switchTab">
导航到消息页面
</navigator>
1.1 声明式后退导航
如果要后退到上一页面或多级页面,则需要指定open-type属性和delta属性
- open-type的值必须是navigateBack,表示要进行后退导航
- delta的值必须是数字,表示要后退的页面数
<navigator open-type="navigateBack" delta="1">后退</navigator>
1.2 声明式导航传参
navigator组件的url属性末尾可以携带参数:
- 参数和路径之间使用?分隔
- 参数键和参数值用=相连
- 不同参数用&分隔
<navigator url="/pages/info/info?name=zs&age=20">跳转到info界面</navigator>
传递参数后,可以使用onLoad函数的参数获取与调用参数
option
onLoad: function (options){
console.log(options)
}
2. 编程式路由导航
调用方法,可以跳转到tabBar页面
wx.switchTab(Object object)
调用方法,可以跳转到非tabBar页面s
wx.navigateTo(Object object)
其中Object参数对象可选的属性列表如下:
属性 | 说明 |
---|---|
url | 需要跳转的tabBar页面的路径,路径后不能带参数 |
success | 接口调用成功的回调函数 |
fail | 接口调用失败的回调函数 |
complete | 接口调用结束的回调函数(无论调用结果如何都会执行) |
-
示例代码
– WXML
– JS
//导航到tabBar页面
gotoMessage(){
wx.switchTab({
url:’/pages/message/message’
})
}//导航到非tabBar页面
gotoInfo(){
wx.navigateTo({
url:’/pages/info/info’
})
}
2.1 编程式后退导航
如果要后退到上一页面或多级页面,需要调用方法,可以返回上一页面或多级页面。
wx.navigateBack(Object object)
其中Object参数对象可选的属性列表如下:
属性 | 说明 |
---|---|
delta | 后退的页面数,如delta大于现有页面数,则返回到首页 |
success | 接口调用成功的回调函数 |
fail | 接口调用失败的回调函数 |
complete | 接口调用结束的回调函数(无论调用结果如何都会执行) |
-
示例代码
– WXML
– JS
goBack(){
wx.navigateBack({
wx.navigateBack()
})
}
2.3 编程式导航传参
调用方法跳转页面时,也可以携带参数
wx.navigateTo(Object object)
gotoInfo(){
wx.navigateTo({
url:'/pages/info/info?name=ls&gender=男'
})
}
获取、调用参数的方法与声明式导航一致
路由导航
- 路由导航1. 声明式路由导航1.1 声明式后退导航1.2 声明式导航传参2. 编程式路由导航2.1 编程式后退导航2.3 编程式导航传参
- 1. 声明式路由导航1.1 声明式后退导航1.2 声明式导航传参
- 1.1 声明式后退导航
- 1.2 声明式导航传参
- 2. 编程式路由导航2.1 编程式后退导航2.3 编程式导航传参
- 2.1 编程式后退导航
- 2.3 编程式导航传参
1. 声明式路由导航
navigator标签被用于声明式路由导航
- url表示要跳转的页面地址,必须以/开头
- open-type表示跳转的方式,如果跳转的页面为tabBar页面,该属性必须为switchTab
<navigator url="/pages/info/info">导航到info页面</navigator>
<navigator url="/pages/message/message" open-type="switchTab">
导航到消息页面
</navigator>
1.1 声明式后退导航
如果要后退到上一页面或多级页面,则需要指定open-type属性和delta属性
- open-type的值必须是navigateBack,表示要进行后退导航
- delta的值必须是数字,表示要后退的页面数
<navigator open-type="navigateBack" delta="1">后退</navigator>
1.2 声明式导航传参
navigator组件的url属性末尾可以携带参数:
- 参数和路径之间使用?分隔
- 参数键和参数值用=相连
- 不同参数用&分隔
<navigator url="/pages/info/info?name=zs&age=20">跳转到info界面</navigator>
传递参数后,可以使用onLoad函数的参数获取与调用参数
option
onLoad: function (options){
console.log(options)
}
2. 编程式路由导航
调用方法,可以跳转到tabBar页面
wx.switchTab(Object object)
调用方法,可以跳转到非tabBar页面s
wx.navigateTo(Object object)
其中Object参数对象可选的属性列表如下:
属性 | 说明 |
---|---|
url | 需要跳转的tabBar页面的路径,路径后不能带参数 |
success | 接口调用成功的回调函数 |
fail | 接口调用失败的回调函数 |
complete | 接口调用结束的回调函数(无论调用结果如何都会执行) |
-
示例代码
– WXML
– JS
//导航到tabBar页面
gotoMessage(){
wx.switchTab({
url:’/pages/message/message’
})
}//导航到非tabBar页面
gotoInfo(){
wx.navigateTo({
url:’/pages/info/info’
})
}
2.1 编程式后退导航
如果要后退到上一页面或多级页面,需要调用方法,可以返回上一页面或多级页面。
wx.navigateBack(Object object)
其中Object参数对象可选的属性列表如下:
属性 | 说明 |
---|---|
delta | 后退的页面数,如delta大于现有页面数,则返回到首页 |
success | 接口调用成功的回调函数 |
fail | 接口调用失败的回调函数 |
complete | 接口调用结束的回调函数(无论调用结果如何都会执行) |
-
示例代码
– WXML
– JS
goBack(){
wx.navigateBack({
wx.navigateBack()
})
}
2.3 编程式导航传参
调用方法跳转页面时,也可以携带参数
wx.navigateTo(Object object)
gotoInfo(){
wx.navigateTo({
url:'/pages/info/info?name=ls&gender=男'
})
}
获取、调用参数的方法与声明式导航一致