// import request from '@/utils/request' function request (url, options) { return fetch(url, options) .then(response => response.json()) .then(data => { if (data.code === 1000) return data.data return Promise.reject(data.message) }) } const jsApiList = [ 'updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareTimeline', 'onMenuShareAppMessage', 'onMenuShareQQ', 'onMenuShareWeibo', 'onMenuShareQZone' ] function init (url) { request(`https://api.h5.njyunzhi.com/mp/jssdk?url=${encodeURIComponent(url)}`).then((res) => { window.wx.config({ debug: process.env.NODE_ENV === 'development', // 开启调试模式,调用的所有api的返回值会在客户端alert出来,若要查看传入的参数,可以在pc端打开,参数信息会通过log打出,仅在pc端时才会打印。 appId: res.appId, // 必填,公众号的唯一标识 timestamp: res.timestamp, // 必填,生成签名的时间戳 nonceStr: res.nonceStr, // 必填,生成签名的随机串 signature: res.signature, // 必填,签名 jsApiList // 必填,需要使用的JS接口列表 }) }) } // init() /** * 分享到好友或者QQ * @param {*} opt */ export function shareData (opt) { window.wx.ready(function () { window.wx.updateAppMessageShareData({ title: opt.title, // 分享标题 desc: opt.desc, // 分享描述 link: opt.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: opt.imgUrl // 分享图标 }) }) } export function shareTimeline (opt) { window.wx.ready(function () { window.wx.updateTimelineShareData({ title: opt.title, // 分享标题 link: opt.link, // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: opt.imgUrl // 分享图标 }) }) } /** * 分享全部 * @param {*} opt */ export function share (opt) { init(opt.link) window.wx.ready(function () { jsApiList.map((apiName) => { const api = window.wx[apiName] api({ title: opt.title || '', // 分享标题 link: opt.link || '', // 分享链接,该链接域名或路径必须与当前页面对应的公众号JS安全域名一致 imgUrl: opt.imgUrl || '', // 分享图标 desc: opt.desc || '' }) }) }) }