目前小程序的几个页面跳转方式的主要区别
就两点:
- 1.是否可以返回上一个页面
- 2.目标页面是否是tabBar
两个通用属性
- 1.限制:目前页面路径最多只能十层。
-2.分类:和
不允许跳转到 tabbar 页面,只能用
跳转到 tabbar 页面
下面是对几个跳转方式的整理说明
({})
保留当前页面,跳转到应用内的某个页面,使用
可以返回;
关于Url参数:
- 不能跳转到tabBar页面
- 带参格式:【路径】?【参数键1】=【参数值】& 【参数键2】=【参数值】
({
url:'../test/test?id=1&page=4',//跳转页面的路径,可带参数?隔开,不同参数用 & 分隔;相对路径,不需要.wxml后缀
success:function(){} //成功后的回调;
fail:function(){} //失败后的回调;
complete:function(){} //结束后的回调(成功,失败都会执行)
})
传递的参数在接收页面onLoad()函数中得到值:就可以得到了
onLoad: function (option) {
(option)//可以打印一下option看查看参数
this.setData({
id:,
});
1.(OBJECT)
关闭当前页面,返回上一页面或多级页面。
可通过 getCurrentPages()) 获取当前的页面栈,决定需要返回几层。
关于参数:
delta–>类型:Number,
默认值:1 ,
说明:返回的页面数,如果 delta 大于现有页面数,则返回到首页。
注意:调用 navigateTo 跳转时,调用该方法的页面会被加入堆栈,而 redirectTo 方法则不会。见下方示例代码
// 此处是A页面
({
url: 'B?id=1'
})
// 此处是B页面
({
url: 'C?id=1'
})
// 在C页面内 navigateBack,将返回A页面
({
delta: 2
})
(OBJECT)
关闭
(之前的页面是回不去的)当前页面,跳转到非tabBar的某个页面
关于Url参数:
- 不能跳转到tabBar页面
- 【路径】?【参数键1】=【参数值】& 【参数键2】=【参数值】
(OBJECT)
关闭
(之前的页面是回不去的)所有页面,打开到应用内的某个页面。
关于Url参数:
- 【路径】?【参数键1】=【参数值】& 【参数键2】=【参数值】
- 【如果是跳转到tabBar页面,则不能带参数】
(OBJECT)
跳转到tabBar的某个页面,并关闭
其他所有非 tabBar 页面
关于参数:
- 目标页面必须是在: 的 tabBar 中定义的页面
- 不能带参数
wx.switchTab({
url: '/pages/home/home'
});
5.组件
直接写在布局里面的跳转方式
参数说明:
- url:和上面几种方式的规则一样,当前小程序内的跳转链接
- open-type(跳转方式):有效值如下表
参数 | 说明 |
---|---|
navigate | 对应 或 的功能 |
redirect | 对应 的功能 |
switchTab | 对应 的功能 |
reLaunch | 对应 的功能 |
navigateBack | 对应 的功能 |
eg:
<navigator url="/pages/detail/detail">点击跳转</navigator>
参考:小程序官方文档