vue微信分享链接添加动态参数

摘要:微信分享时 分享链接携带参数可能不是固定的 需要在分享的前一刻才知道 这里就是动态设置分享链接的基本写法 代码不是那么详尽 但大致流程如下:安装引用jssdk,通过config接口注入配置信息

微信分享时 分享链接携带参数可能不是固定的 需要在分享的前一刻才知道 这里就是动态设置分享链接的基本写法 代码不是那么详尽 但大致流程如下 


1.安装引用jssdk

npm install --save weixin-js-sdk
const wx=require('weixin-js-sdk')


2.通过config接口注入配置信息

const jsApiList = ['onMenuShareQQ', 'onMenuShareAppMessage', 'onMenuShareTimeline', 'updateAppMessageShareData', 'updateTimelineShareData']


methods中的方法 

getUrl () {
  if (window.entryUrl === '') {
    window.entryUrl = location.href.split('#')[0]
  }
  var u = navigator.userAgent
  var isAndroid = u.indexOf('Android') > -1 || u.indexOf('Linux') > -1 // g
  return isAndroid ? location.href.split('#')[0] : window.entryUrl
},
getConfig () {
  var url = this.getUrl()
  return new Promise((resolve, reject) => {
    this.$axios.get('your requestUrl', {
      params: {
        url: url
      }
    }).then((response) => {
      var data = response.data.data
      var appId = data.appId
      var noncestr = data.nonceStr
      // var jsapi_ticket = res.jsapi_ticket;
      var timestamp = data.timestamp
      var signature = data.signature
      wx.config({
        debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
        appId: appId, // 必填,公众号的唯一标识
        timestamp: timestamp, // 必填,生成签名的时间戳
        nonceStr: noncestr, // 必填,生成签名的随机串
        signature: signature, // 必填,签名,见附录1
        jsApiList: jsApiList // 必填,需要使用的JS接口列表,所有JS接口列表 见附录2
      })
      wx.error(function (res) {
        console.log(JSON.stringify(res))
      })
      resolve()
    })
  })
},
shareToFriendsCircle () {
  wx.ready(() => {
    wx.onMenuShareTimeline({
      title: this.title,
      link: this.link,
      imgUrl: this.imgUrl,
      success: function () {
      }
    })
  })
},
shareToFriends () {
  wx.ready(() => {
    wx.onMenuShareAppMessage({
      title: this.title,
      desc: this.desc,
      link: this.link,
      imgUrl: this.imgUrl,
      success: function () {

      }
    })
  })
},

 

在mounted中调用 getConfig方法,调用分享方法的位置代码大致如下

this.link = location.origin + '/****/index.html#/share?openId=' + this.openId + '&shareId=' + shareId
this.desc = '分享链接添加动态参数'
this.shareToFriends()
this.shareToFriendsCircle()


来自:https://www.cnblogs.com/jjlinsblog/archive/2019/04/28/10784319.html


本文内容仅供个人学习、研究或参考使用,不构成任何形式的决策建议、专业指导或法律依据。未经授权,禁止任何单位或个人以商业售卖、虚假宣传、侵权传播等非学习研究目的使用本文内容。如需分享或转载,请保留原文来源信息,不得篡改、删减内容或侵犯相关权益。感谢您的理解与支持!

链接: https://shenqiku.cn/article/FLY_3114