安裝
npm install weixin-js-sdk
在頁面中
import wx from 'weixin-js-sdk';
接下來,就需要在mounted里面進行wx.config()了。
由於使用微信js需要進行授權配置,所以需要使用ajax請求從服務端獲取微信jssdk的授權參數,ajax請求我這里使用的axios
this.axios({
method: 'post',
url: 'http://my.service.com/index.php/opcode/6002',
data:{ url:location.href.split('#')[0] } //向服務端提供授權url參數,並且不需要#后面的部分
}).then((res)=>{
wx.config({
debug: true, // 開啟調試模式,
appId: res.appId, // 必填,企業號的唯一標識,此處填寫企業號corpid
timestamp: res.timestamp, // 必填,生成簽名的時間戳
nonceStr: res.nonceStr, // 必填,生成簽名的隨機串
signature: res.signature,// 必填,簽名,見附錄1
jsApiList: ['scanQRCode'] // 必填,需要使用的JS接口列表,所有JS接口列表見附錄2
});
})
就這樣,只要服務端返回的簽名沒有錯,就能配置成功,就可以使用微信js啦。
需要注意的是,每次url變化之后都需要重新微信jssdk授權,雖然每次授權url除去#后都是一樣的,但是必須這么做,微信的機制。
還有一個需要注意的坑,使用微信自定義分享功能的時候,當分享鏈接中存在中文的時候,一定要進行encodeURIComponent(),否則在安卓手機上能成功自定義分享,ios手機上則不能成功分享。查閱資料后得知是安卓手機會自動encodeURIComponent,而ios不會。