导致微信JSSDK 自定义分享内容接口失效的一种原因

在微信开发者工具上调试分享接口成功,真机测试的时候却失败了。
后来发现是手机反应比较慢
wx.config()还未执行成功后面绑定分享按钮事件的代码就开始执行了导致绑定失败
因此在页面加载时需要立即执行的接口必须写在wx.ready()

修改后的代码

//从服务端获取配置信息
$.post('/getSignPackage',{location:window.location.href},function(data){
    wx.config({
        debug: false,
        appId: data.appId,
        timestamp: data.timestamp, 
        nonceStr: data.nonceStr, 
        signature: data.signature,
        jsApiList: [
            'onMenuShareTimeline',
            'onMenuShareAppMessage',
            'onMenuShareQQ',
            'onMenuShareWeibo',
            'onMenuShareQZone'
        ]
    });

    var data = {
        title: 'title', // 分享标题
        desc: 'desc', // 分享描述
        link: 'link', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
        imgUrl: 'imgUrl', // 分享图标
        success: function () {
            // 用户确认分享后执行的回调函数
        },
        cancel: function () {
            // 用户取消分享后执行的回调函数
        }
    };
    wx.ready(function(){
        wx.onMenuShareTimeline(data);
        wx.onMenuShareAppMessage(data);
        wx.onMenuShareQQ(data);
        wx.onMenuShareWeibo(data);
        wx.onMenuShareQZone(data);
    });
});

另外,如果js是在页面加载完毕执行的话。当页面为由加载完毕的时候用户点击分享也不会生效,需要根据情况设置加载态提示用户。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,094评论 19 139
  • 先来看看微信分享效果: 在没有集成微信分享js-sdk前是这样的:没有摘要,缩略图任意抓取正文图片 在集成微信分享...
    思梦PHP阅读 12,149评论 6 4
  • 随着微信的升级,关于微信的一些jssdk接口需通过签名之后才可以使用,今天主要与大家讲解一下前端如何调用jssdk...
    cyh_nini阅读 9,897评论 7 7
  • 错误1 分享到朋友圈的title和url地址都不正确,title是公众号名称,url是本页面地址,都不读取我们自定...
    hey_沙子阅读 35,440评论 1 9
  • 文/钟楚白【@ALei钟楚白 1我有无数个技能,唯独没有[爱] 有个妹子问我,有没有爱一个人的感觉,会不会爱一个人...
    ALei钟楚白阅读 3,138评论 0 2

友情链接更多精彩内容