收藏
回答

微信网页开发 jssdk新分享接口,可以获取用户点击分享按钮的事件吗?(不需要知道是否分享成功)

网页开发,jssdk 新分享接口 updateAppMessageShareData 、updateTimelineShareData,有什么办法可以监听到用户点击分享按钮了,不需要知道是否分享成功,只想知道用户点击了分享按钮弹出朋友列表界面这个事件,请问可以监听到吗?目前success 以及 complete 回调测试出来都是设置的时候就返回了,分享的时候并不会触发

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

3 个回答

  • 2022-07-27

    经测试,jssdk@1.6.0我使用的版本

    wx.config({
    debug: false,
    appId: info.appid,
    timestamp: info.timestamp,
    nonceStr: info.noncestr,
    signature: info.signature,
    jsApiList: [
      'checkJsApi',
      'hideMenuItems',
      'onMenuShareTimeline',
      'onMenuShareAppMessage',
      'onMenuShareQQ',
      'onMenuShareWeibo'
      ]
    })
    
    


    如果需要分享成功触发一些操作,不要使用新的分享 api 如:
    自定义“分享给朋友”及“分享到QQ”按钮的分享内容(1.4.0)- updateTimelineShareData
    
    不要将 updateTimelineShareData 等在 jsApiList中 列出,依旧使用旧的 api,微信只是说即将废弃,几年了也没见废弃
    


    // 定义通用分享数据
    const shareData = {
          title: '分享标题',
          desc: '分享标题描述',
          link: 'https://xxx.xxx.com',
          imgUrl: 'https://xxx/xxx/xxx.png',
          success: function () {
            console.log('分享成功success~')
             // 分享成功后的操作
          }
    }
    
    wx.ready((res) => {
    // 隐藏菜单
    wx.hideMenuItems({
    menuList: [
    
    'menuItem:copyUrl',
    'menuItem:originPage',
    'menuItem:openWithQQBrowser',
    'menuItem:openWithSafari',
    'menuItem:share:facebook',
    'menuItem:share:QZone',
    'menuItem:share:email'
    ]
     })
    // 分享,这里调用老版本的,可以监听分享的 success					
    
      wx.onMenuShareAppMessage(shareData)
      wx.onMenuShareTimeline(shareData)
      wx.onMenuShareQQ(shareData)
      wx.onMenuShareWeibo(shareData)
    })
    


    // 移动端可以添加,vConsole.js 来测试,分享成功的 success 是否触发
    // index.html
    
    
     var vConsole = new VConsole()
    



    2022-07-27
    有用
    回复
  • 李某人
    李某人
    2021-04-26

    解决了吗,我也想知道

    2021-04-26
    有用
    回复
  • vvhl
    vvhl
    2020-11-24

    解决了吗,我也想知道

    2020-11-24
    有用
    回复
登录 后发表内容
问题标签