收藏
回答

web-view嵌H5调用wx.miniprogram.navigateTo报错!?

开发过程中发现,在android终端(ios终端小程序中没有这个问题)小程序中web-view加载H5页面后出现一句话:“window.WeixinJSBridge already exists”!随后在通过点击事件调用小程序wx.miniprogram.navigateTo API时出现报错:errMsg: "invokeMiniProgramAPI:permission denied"!无法跳转小程序!

终端机型:OPPO R15(型号:PACM00)

微信版本:7.0.19

代码片段:

//触发跳转事件
this.navigateTo(nextPage);
//----------------------------------------------------------跳转具体方法-----------------------------------------------------------------//
navigateTo(url) {
      //控制页面跳转---小程序、公众号、非微信跳转方式 【modelName---vue路由名字】
      this.isMiniProgram((res) => {
        //判断是否是小程序页面的回调函数
        if (res) {
          //小程序页面
          this.$wx.miniProgram.navigateTo({
            url: url,
            success: function(e){
              console.log('web-view页面跳转小程序success',e)
            },
            fail: function(e){
              console.log('web-view页面跳转小程序fail',e);
            }, 
            complete:function(e){
              console.log('web-view页面跳转小程序complete',e);
            }
          });
        }
      });
    },


    isMiniProgram(callback) {
     // 判断是否在微信环境。
      var ua = window.navigator.userAgent.toLowerCase();
      if (ua.match(/MicroMessenger/i) != "micromessenger") {
        console.log('--------->> 非微信环境!');
        callback(false);
      } else {
        //微信API获取当前运行环境
        this.$wx.miniProgram.getEnv((res) => {
          console.log(res, "res");
          if (res.miniprogram) {
            console.log('--------->> 小程序环境!');
            //小程序环境
            callback(true);
          } else {
            callback(false);
          }
        });
      }
    }
  },

报错图片:

最后一次编辑于  10-16
回答关注问题邀请回答
收藏

2 个回答

  • 初见
    初见
    1天前

    请问解决了吗

    1天前
    有用
    回复
  • Anker.
    Anker.
    10-16

    引用的jssdk是什么版本呢? 换个版本试试看?

    10-16
    有用
    回复 5
    • livensi
      livensi
      发表于移动端
      10-16
      不行
      10-16
      回复
    • Anker.
      Anker.
      10-16回复livensi
      10-16
      回复
    • livensi
      livensi
      10-16回复Anker.
      $wx是vue属性,跟这个没关系~实际上就是wx对象~
      10-16
      回复
    • Anker.
      Anker.
      10-16回复livensi
      你写一个html 用script 引入写一个简单的试试
      10-16
      回复
    • livensi
      livensi
      10-16回复Anker.
      应该试试
      10-16
      回复
登录 后发表内容
问题标签