wxutils.js 4.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. import wx from "weixin-js-sdk";
  2. /*
  3. * 微信分享
  4. * 获取微信加签信息
  5. * @param{data}:获取的微信加签
  6. * @param{shareData}:分享配置参数
  7. */
  8. export const wxShare = (data, shareData) => {
  9. let appId = 'wx510821957a261e8d';
  10. let timestamp = data.timestamp;
  11. let nonceStr = data.nonceStr;
  12. let signature = data.signature;
  13. wx.config({
  14. debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。(测试记得关掉)
  15. appId: appId, // 必填,公众号的唯一标识
  16. timestamp: timestamp, // 必填,生成签名的时间戳
  17. nonceStr: nonceStr, // 必填,生成签名的随机串
  18. signature: signature, // 必填,签名,见附录1
  19. jsApiList: [
  20. 'updateAppMessageShareData', //分享到微信及QQ(新接口)
  21. 'updateTimelineShareData', //分享到朋友圈”及“分享到QQ空间(新接口)
  22. 'onMenuShareAppMessage'
  23. ]
  24. // 必填,需要使用的JS接口列表
  25. // "checkJsApi",
  26. });
  27. // wx.checkJsApi({
  28. // jsApiList: ["chooseImage", "updateAppMessageShareData"], // 需要检测的JS接口列表,所有JS接口列表见附录2,
  29. // success: function (res) {
  30. // // 以键值对的形式返回,可用的api值true,不可用为false
  31. // // 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
  32. // console.log(res, "checkJsApi");
  33. // },
  34. // });
  35. wx.ready(function () {
  36. //分享到朋友圈”及“分享到QQ空间”
  37. // wx.updateTimelineShareData({
  38. // ...shareData,
  39. // link: shareData.link + "&t=" + timestamp, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  40. // success: function (res) {
  41. // console.log("分享朋友圈成功返回的信息为:", res);
  42. // },
  43. // });
  44. // wx.updateAppMessageShareData({
  45. // title: '盐都区工业企业产品发布平台', // 分享标题
  46. // desc: '点击直接登录', // 分享描述
  47. // link: 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/#/pages/index/index?loginid='+data.Id + "&t=" + data.timestamp + "&Content=1", // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  48. // imgUrl: 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/static/img/homeHL.png', // 分享图标
  49. // // link: shareData.link + "&t=" + shareData.timestamp + "&Content=1", // 分享链接 该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  50. // success: function (res) {
  51. // console.log("分享朋友成功返回的信息为:", res);
  52. // },
  53. // });
  54. if(wx.updateAppMessageShareData) {
  55. wx.updateAppMessageShareData({
  56. // title: '盐都区工业企业产品发布平台', // 分享标题
  57. // desc: '点击直接登录', // 分享描述
  58. // link: shareData.link + "&t=" + shareData.timestamp + "&Content=1", // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  59. // imgUrl: 'https://miniapp.huidutech.com.cn/yd_qycpfbH5/static/img/titlebg.jpg', // 分享图标
  60. ...shareData,
  61. // link: shareData.link + "&t=" + shareData.timestamp + "&Content=1", // 分享链接 该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  62. success: function (res) {
  63. console.log("分享朋友成功返回的信息为:", res);
  64. },
  65. });
  66. } else {
  67. wx.onMenuShareAppMessage({
  68. ...shareData,
  69. //link: shareData.link + "&t=" + shareData.timestamp + "&Content=1", // 分享链接 该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  70. success: function (res) {
  71. console.log("分享朋友成功返回的信息为:", res);
  72. },
  73. });
  74. }
  75. //“分享给朋友”及“分享到QQ”
  76. // wx.updateAppMessageShareData({
  77. // ...shareData,
  78. // link: shareData.link + "&t=" + timestamp + "&Content=1", // 分享链接 该链接域名或路径必须与当前页面对应的公众号JS安全域名一致
  79. // success: function (res) {
  80. // console.log("分享朋友成功返回的信息为:", res);
  81. // },
  82. // });
  83. });
  84. wx.error(function (res) {
  85. // config信息验证失败会执行error函数,如签名过期导致验证失败,具体错误信息可以打开config的debug模式查看,也可以在返回的res参数中查看,对于SPA可以在这里更新签名。
  86. console.log("验证失败返回的信息:", res);
  87. // uni.showModal({
  88. // title: '1',
  89. // content:JSON.stringify(res),
  90. // showCancel: true,
  91. // success: (res) => {
  92. // }
  93. // });
  94. });
  95. };