fa.weixin.mixin.js 1.7 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. //微信网页分享
  2. var jweixin = require('jweixin-module')
  3. export const weixinShare = {
  4. methods: {
  5. //初始化sdk配置
  6. initJssdk: function(callback) {
  7. let url = location.href.split('#')[0];
  8. this.$api.getSigned({url:url}).then(res=>{
  9. if (res.code) {
  10. jweixin.config({
  11. debug: false,
  12. appId: res.data.appId,
  13. timestamp: res.data.timestamp,
  14. nonceStr: res.data.nonceStr,
  15. signature: res.data.signature,
  16. jsApiList: [
  17. 'checkJsApi',
  18. 'updateAppMessageShareData',
  19. 'updateTimelineShareData',
  20. 'onMenuShareWeibo'
  21. ]
  22. });
  23. //配置完成后,再执行分享等功能
  24. if (typeof callback == 'function') {
  25. callback();
  26. }
  27. }else{
  28. this.$u.toast(res.msg)
  29. }
  30. })
  31. },
  32. //在需要自定义分享的页面中调用
  33. wxShare: function(data) {
  34. //每次都需要重新初始化配置,才可以进行分享
  35. this.initJssdk(function() {
  36. jweixin.ready(function() {
  37. var shareData = {
  38. title: data && data.title ? data.title : '分享标题',
  39. desc: data && data.desc ? data.desc : '分享内容',
  40. link: data && data.url?data.url:window.location.origin,
  41. imgUrl: data && data.img ? data.img : '',
  42. success: function(res) {
  43. },
  44. cancel: function(res) {}
  45. };
  46. //自定义“分享给朋友”及“分享到QQ”按钮的分享内容;
  47. jweixin.updateAppMessageShareData(shareData)
  48. //自定义“分享到朋友圈”及“分享到QQ空间”按钮的分享内容;
  49. jweixin.updateTimelineShareData(shareData)
  50. //分享到腾讯微博
  51. jweixin.onMenuShareWeibo(shareData);
  52. });
  53. });
  54. }
  55. }
  56. }