VUE 微信分享
vue 分享的方法写在路由 router/index.js
里面,使用router.beforeEach
方法
router.beforeEach((to, from, next) => {
document.title = to.meta.title //动态切换文档标题
//微信分享自定义设置
api.getSign(encodeURIComponent(location.href.split('#')[0])) //访问接口获取以下需要的参数
.then((res) => {
if(res.result == '1'){
wx.config({
debug: false,
appId: res.data[0].appid, // 必填,公众号的唯一标识
timestamp: res.data[0].timestamp, // 必填,生成签名的时间戳
nonceStr: res.data[0].nonceStr, // 必填,生成签名的随机串
signature: res.data[0].signature,// 必填,签名
jsApiList: ['onMenuShareTimeline','onMenuShareAppMessage','onMenuShareQQ','onMenuShareWeibo','onMenuShareQZone'] // 必填,需要使用的JS接口列表,所有JS接口列表见附录2
});
wx.ready(function(){
let sharedParams = { //分享参数(朋友圈除外)
title: '', // 分享标题
desc: '星购云经纪平台', // 分享描述
link: location.href, // 分享链接
imgUrl: 'http://yourSharedLogo.jpg' // 分享图标
}
if(to.meta.title == '明星详情'){
let starName = ''
api.getNameByID(to.params.id)
.then((res) =>{
if(res.result == '1'){
starName = res.data[0].name
sharedParams.title = starName+'星数据' //如:葛优星数据
} else{
sharedParams.title = '星数据'
}
//分享到朋友圈
wx.onMenuShareTimeline(sharedParams);
//分享给朋友
wx.onMenuShareAppMessage(sharedParams);
//分享到QQ
wx.onMenuShareQQ(sharedParams);
//分享到腾讯微博
wx.onMenuShareWeibo(sharedParams);
//分享到QQ空间
wx.onMenuShareQZone(sharedParams);
})
} else{
sharedParams.title = to.meta.title
//分享到朋友圈
wx.onMenuShareTimeline(sharedParams);
//分享给朋友
wx.onMenuShareAppMessage(sharedParams);
//分享到QQ
wx.onMenuShareQQ(sharedParams);
//分享到腾讯微博
wx.onMenuShareWeibo(sharedParams);
//分享到QQ空间
wx.onMenuShareQZone(sharedParams);
}
});
}
})
next()
})