收藏
回答

微信公众号网页开发中,WeixinJSBridge和引入jssdki有什么区别呢?

在开发微信公众号网页的过程中,需要用到微信的分享设置、隐藏分享按钮、支付等功能,文档上只提到了引入jssdk的方式进行调用API,但是网上搜索的大部分都是通过WeixinJSBridge调用API功能的,jssdk方式需要调用wx.config进行注册后使用API功能,这两者调用有什么区别呢?WeixinJSBridge有没有文档说明呢

回答关注问题邀请回答
收藏

4 个回答

  • 睿骞
    睿骞
    2020-05-15

    通过项目的一个bug 初步测试得到的结论是 jssdk和WeixinJSBridge在一个页面里面同时使用的话,不论调用先后顺序,如果同时连续调用的jssdk和WJSB的话 有权重之分的 同样的功能jssdk会覆盖WeixinJSBridge,例如我通过jssdk自定义分享 等这个方法调用完毕然后我后面再调用 WeixinJSBridge隐藏分享按钮 失效,失效场景页面加载第一次不会发生,连续进入好多次WeixinJSBridge隐藏按钮的功能就会失效。

    

    2020-05-15
    有用 2
    回复
  • 于渊℡¹⁵⁰⁰¹⁰⁴³⁷²⁷
    于渊℡¹⁵⁰⁰¹⁰⁴³⁷²⁷
    2022-09-26

    只屏蔽分享按钮功能的话使用WeixinJSBridge方便,做分享功能的话还使用jsdk吧. 希望可以帮到你

    //屏蔽微信分享等功能  wjs
    function onBridgeReady() {
        WeixinJSBridge.call('hideOptionMenu');
    }
    
    
    if (typeof WeixinJSBridge == "undefined") {
        if (document.addEventListener) {
            document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false);
        } else if (document.attachEvent) {
            document.attachEvent('WeixinJSBridgeReady', onBridgeReady);
            document.attachEvent('onWeixinJSBridgeReady', onBridgeReady);
        }
    } else {
        onBridgeReady();
    }
    
    // 屏蔽微信分享功能  jsdk
    //  配置文件
    wx.config({
                debug: false,
                appId: 'appid',
                timestamp: timestamp,
                nonceStr: 'nonceStr',
                signature: 'signature',
                //配置api
                jsApiList: ['hideMenuItems']
    });
    //  页面
     mounted() {
        wx.hideMenuItems({
          menuList: ['menuItem:share:appMessage', "menuItem:share:timeline"]
        })
      }
    
    2022-09-26
    有用
    回复 1
    • Jellal&树
      Jellal&树
      2023-12-03
      请教一个问题, WeixinJSBridgeReady和onWeixinJSBridgeReady的区别是啥,会不会两个都调用了
      2023-12-03
      回复
  • 王和旭
    王和旭
    2022-03-11

    怎么说呢?wx注入更全面,比如我想隐藏其他菜单

    2022-03-11
    有用
    回复
  • Mr.Zhao
    Mr.Zhao
    2020-04-23

    你先实现wx.config的写法,再研究这两者有什么区别吧

    2020-04-23
    有用
    回复 4
    • 勿忘初心🐠
      勿忘初心🐠
      2020-04-23
      用wx.config实现了,但是wx.config需要调后台的接口拿调config的数据,这其中可能出错导致wx.config失败后面的都不能用了,所以想看下WeixinJSBridge这种方式和wx.config的区别
      2020-04-23
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-04-23回复勿忘初心🐠
      不让config失败不就行了,sdk得鉴权的。WeixinJSBridge这种方式太老了
      2020-04-23
      回复
    • 勿忘初心🐠
      勿忘初心🐠
      2020-04-23
      调接口没法保证不会失败啊,还有我看好多调WeixinJSBridge直接判断有没有WeixinJSBridge这个对象,然后调WeixinJSBridge里面的方法啊
      2020-04-23
      回复
    • Mr.Zhao
      Mr.Zhao
      2020-04-23回复勿忘初心🐠
      还是自己实践一下比较好
      2020-04-23
      回复
登录 后发表内容
问题标签