微信小程序 不能跳转页面 跳转不生效 ,可能是用法不正确哦
wx.navigateTo(Object object)
保留当前页面,跳转到应用内的某个页面。但是不能跳到 tabbar 页面。使用 wx.navigateBack 可以返回到原页面。小程序中页面栈最多十层。
页面要返回/跳转至tabbar的某一页面,也就是要返回或者跳转到带有Tab的页面,可用:
wx.switchTab({
url: ‘../b/b’
});
注意switchTab只能跳转到带有tab的页面,不能跳转到不带tab的页面
| 属性 | 类型 | 默认值 | 必填 | 说明 | | :------------: | :------------: |:------------: |:------------: | |url |string||是|需要跳转的应用内非 tabBar 的页面的路径 (代码包路径), 路径后可以带参数。参数与路径之间使用 ? 分隔,参数键与参数值用 = 相连,不同参数用 & 分隔;如 'path?key=value&key2=value2'| |events|Object||否|页面间通信接口,用于监听被打开页面发送到当前页面的数据。基础库 2.7.3 开始支持。| |success|function||否|接口调用成功的回调函数| |fail|function||否|接口调用失败的回调函数| |complete|function||否|接口调用结束的回调函数(调用成功、失败都会执行)|
由此可见,switch是不能添加参数的。
如果我们跳转到Tab也想要传参,怎么办呢?
可以换一种思路,跳转页面的时候传参,是为了有个标识,是为了下一个页面更方便的展示信息。我们可以在switch跳转之前设置一个全局变量,到下一个页面的时候,直接去获取全局变量
储存时可用:
wx.setStorageSync(‘参数名’, res);
获取时可用:
var 变量名 = wx.getStorageSync(‘参数名‘) || [];
跳转不带tab的页面还是用redirectTo或者navigateTo
wx.navigateTo({
url: ‘../b/b’
});
wx.redirectTo({
url: ‘../b/b’
});
返回上一个页面
wx.navigateBack({
delta: 1
})