收藏
回答

navigateTo API 在小程序和JSSDK中表现不一致

问题模块 框架类型 问题类型 API/组件名称 终端类型 微信版本 基础库版本
API和组件 小程序 Bug wx.navigateTo 客户端 6.7.4 2.4.2

- 当前 Bug 的表现(可附上截图)




根据文档,小程序 web-view 组件加载 H5 页面,可以通过 JSSDK 提供的 wx.miniProgram.navigateTo, wx.miniProgram.redirectTo, wx.miniProgram.switchTab 来进行页面跳转。


例如:现有首页 /pages/index/index,且该首页位于 TabBar 中。


在小程序跳转首页时,调用 wx.navigateTo({url: "/pages/index/index", success() {console.log('success');}, fail() {console.log('fail');}}),此时 fail 回调被调用。


在 web-view 中的 H5 跳转首页时,调用 wx.miniProgram.navigateTo({url: "/pages/index/index", success() {console.log('success');}, fail() {console.log('fail');}}),此时 success  回调被调用。


- 预期表现


在 web-view 的 H5 当 navigateTo 一个 tabbar page 的时候,success 回调被调用。


同理,redirectTo 和 switchTab 都存在无论跳转的 page 是否是 tabbar page,它们都永远调用 success 回调的情况。

最后一次编辑于  2018-12-15  (未经腾讯允许,不得转载)
回答关注问题邀请回答
收藏

2 个回答

  • 黄思程
    黄思程
    2018-12-17

    webview 中的接口目前还只是代表调用从 web-view 发送到 小程序 的通信是成功的,不代表真实调用 navigateTo 是成功与否

    2018-12-17
    赞同
    回复 3
    • 商晔
      商晔
      2018-12-17

      是的,我能理解目前 webview 中的 API 的含义,但是是在掉坑之后才理解的。


      官方文档里是不是可以补充一句说明,否则初次使用的 webview 里的接口很容易掉坑啊。

      2018-12-17
      回复
    • 黄思程
      黄思程
      2018-12-18回复商晔

      可以有

      2018-12-18
      回复
    • f
      f
      01-22回复黄思程

      我想问一下公众号里面的h5能跳转小程序吗,楼主的是小程序里面的h5

      01-22
      回复
  • 菜菜张
    菜菜张
    01-24

    我这边每次都不成功,怎么解决哇

    01-24
    赞同
    回复