微信分享完整代码

微信分享

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需要的参数

// },

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值