小程序wx.navigateTo和wx.redirectTo 都无效

最近在写小程序,遇到页面跳转时,发现有几次失败。查询资料已解决,总结一下知识点:

一、如下,第5层到到6层时失败(评论页-->返回商品详情页

登陆-->主页-->商品列表页-->商品详情页-->评论页-->返回商品详情页

1.wx.navigate:可以基本满足页面之间跳转需求,但是层级关系不要超过5层,最多5层。

2.wx.redirectTo:当层级关系超过5层时,页面跳转采用这个。

二、第2层到到3层时失败(反馈建议-->返回"我的"页

我的-->反馈建议-->返回"我的"页

此时,没有超过5层,但wx.navigateTo和wx.redirectTo都无效,怎么做都不跳转,后来查了小程序的API,找到了原因,因为"我的"页是tabbar页面。

3.wx.switchTab:  需要跳转到tabbar页面,需要用 wx.switchTab

                  

4.三个跳转的使用方法一致,均为:

wx.redirectTo({
   url: '../addAddress/addAddress'
})
wx.navigateTo({
   url: '../addAddress/addAddress'
})
wx.switchTab({
   url: '../myInfo/myInfo'
})

总结

所以,当下次需要跳转页面时

①、首先检查页面是否在app.json中注册,不注册找不到页面。

②、注意文件夹的层级关系,注意相对路径是否正确。

③、查看一次性跳转页面的层级数量是否超过5层(是,选择wx.redirectTo)。

④、查看要跳转的页面是不是tabBar页面(是,选择 wx.switchTab

      

posted @ 2018-01-18 18:01  Lemoncool  阅读(7911)  评论(0编辑  收藏  举报