微信分享
import wx from 'weixin-js-sdk' //微信sdk依赖
import axios from 'axios' // 封装的axios
const jsApiList = ['onMenuShareAppMessage', 'onMenuShareTimeline'] //要用到微信API
function getJSSDK(url, dataForWeixin) {
let data=JSON.stringify({"url":encodeURIComponent(url)})
axios({
url: '/api/wechat/auth/jssdk.htm',
method:'post',
headers:{'Content-Type': 'application/json'},
data:data
}).then(res => {
const {data,code,msg}=res.data
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。
appId:data.appId, // 公众号的唯一标识
timestamp: data.timestamp, // 生成签名的时间戳
nonceStr: data.nonceStr, // 生成签名的随机串
signature: data.signature, // 签名
jsApiList: jsApiList // 需要使用的JS接口列表
})
wx.ready(function () {
wx.onMenuShareAppMessage({
title: dataForWeixin.title,
desc: dataForWeixin.desc,
link: dataForWeixin.linkurl,
imgUrl: dataForWeixin.img,
trigger: function trigger(res) { },
success: function success(res) {
console.log('已分享');
},
cancel: function cancel(res) {
console.log('已取消');
},
fail: function fail(res) {
alert(JSON.stringify(res));
}
});
// 2.2 监听“分享到朋友圈”按钮点击、自定义分享内容及分享结果接口
wx.onMenuShareTimeline({
title: dataForWeixin.title,
link: dataForWeixin.linkurl,
imgUrl: dataForWeixin.img,
trigger: function trigger(res) {
// alert('用户点击分享到朋友圈');
},
success: function success(res) {
//alert('已分享');
},
cancel: function cancel(res) {
//alert('已取消');
},
fail: function fail(res) {
alert(JSON.stringify(res));
}
});
})
wx.error(function (res) {
alert("微信验证失败");
});
})
}
export default {
// 获取JSSDK
getJSSDK: getJSSDK
}
// var obj = {
// title: "", //分享标题
// desc: data.name, //分享内容
// linkurl:location.href,
// img: process.env.VUE_APP_BASEURL+data.thumbnail
// }
// this.objShare=obj
// this.wechatshar()
// async wechatshar(){
// // alert(location.href.split('?')[0]+'?pid='+this.$route.query.pid)
// var url = location.href.split('?')[0]+'?pid='+this.$route.query.pid
// sdk.getJSSDK(url,this.objShare) //传入sdk.js需要的参数
// },