1648796526(1).png
要求對(duì)微信中轉(zhuǎn)發(fā)的鏈接進(jìn)行diy內(nèi)容,更方便用戶(hù)轉(zhuǎn)發(fā)分享
達(dá)到以下形式
1648796589(1).png
此功能需使用微信JSSDK
先登錄微信公眾平臺(tái)進(jìn)入“公眾號(hào)設(shè)置”的“功能設(shè)置”里填寫(xiě)“JS接口安全域名”畏线。
備注:登錄后可在“開(kāi)發(fā)者中心”查看對(duì)應(yīng)的接口權(quán)限静盅。
npm i weixin-js-sdk -D // 安裝
創(chuàng)建一個(gè)wx-share.js文件
設(shè)置initWx方法,傳遞給調(diào)用分享的網(wǎng)站即可得到自定義配置的內(nèi)容
import Vue from 'vue'
import { shareWxCourse } from 'api/user'
// 后端給的接口蚣常。直接將需要的內(nèi)容傳回來(lái)給我們即可市咽,無(wú)序我們先調(diào)用再傳asset給后端解析再返回。
const wx = require('weixin-js-sdk')
export const initWx = (shareUrl, cid, uid, shareName, cname) => {
if (typeof window !== 'undefined') {
// let obj = {}
Vue.prototype.$showLoading()
shareWxCourse(shareUrl).then(res => {
if (res.code === 1) {
let data = res.data
wx.config({
debug: false, // 開(kāi)啟調(diào)試模式,調(diào)用的所有api的返回值會(huì)在客戶(hù)端alert出來(lái)抵蚊,若要查看傳入的參數(shù)施绎,可以在pc端打開(kāi),參數(shù)信息會(huì)通過(guò)log打出泌射,僅在pc端時(shí)才會(huì)打印粘姜。
appId: data.appId, // 必填,公眾號(hào)的唯一標(biāo)識(shí)
timestamp: data.timestamp, // 必填熔酷,生成簽名的時(shí)間戳
nonceStr: data.nonceStr, // 必填孤紧,生成簽名的隨機(jī)串
signature: data.signature, // 必填,簽名
jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'] // 必填拒秘,需要使用的JS接口列表
})
wx.checkJsApi({ // 檢測(cè)api是否可用
jsApiList: ['updateAppMessageShareData', 'updateTimelineShareData', 'onMenuShareAppMessage'], // 需要檢測(cè)的JS接口列表号显,所有JS接口列表見(jiàn)附錄2,
success: function(res) {
// 以鍵值對(duì)的形式返回,可用的api值true躺酒,不可用為false
// 如:{"checkResult":{"chooseImage":true},"errMsg":"checkJsApi:ok"}
}
})
wx.ready(function() {
// 需在用戶(hù)可能點(diǎn)擊分享按鈕前就先調(diào)用
wx.updateAppMessageShareData({
title: '好友【' + shareName + '】邀您答題', // 分享標(biāo)題
desc: '愛(ài)動(dòng)腦押蚤,答一答,《' + cname + '》智能培訓(xùn)羹应,看看您得多少分揽碘?', // 分享描述
link: 'http://yourwebsite?id=' + cid + '&user_id=' + uid, // 分享鏈接,該鏈接域名或路徑必須與當(dāng)前頁(yè)面對(duì)應(yīng)的公眾號(hào)JS安全域名一致
imgUrl: '圖標(biāo)', // 分享圖標(biāo)
success: function () {
// 設(shè)置成功
}
})
wx.updateTimelineShareData({
title: '好友【' + shareName + '】邀您答題', // 分享標(biāo)題
desc: '愛(ài)動(dòng)腦园匹,答一答雳刺,《' + cname + '》智能培訓(xùn),看看您得多少分裸违?', // 分享描述
link: 'http://yourwebsite?id=' + cid + '&user_id=' + uid, // 分享鏈接掖桦,該鏈接域名或路徑必須與當(dāng)前頁(yè)面對(duì)應(yīng)公眾號(hào)JS安全域名一致
imgUrl: '圖標(biāo)', // 分享圖標(biāo)
success: function () {
// 用戶(hù)點(diǎn)擊了分享后執(zhí)行的回調(diào)函數(shù)
}
})
})
Vue.prototype.$hideLoading()
}
})
}
}