請求後臺接口獲取weChatData數據
請求後臺接口獲取weChatData數據
然後實現下面代碼
/**
* 微信公衆號支付的數據
*/
if (weChatData !== oldWeChatData && weChatData) {
if (typeof WeixinJSBridge === "undefined") {
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady(weChatData), false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady(weChatData));
document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady(weChatData));
}
} else {
this.onBridgeReady(weChatData);
}
}
下面代碼裏面就是直接拉起微信支付,支付結果的操作
/**
* 拉起微信公衆號支付
* @param response
*/
onBridgeReady = (response) => {
if (response.package === undefined) {
return;
}
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
"appId": response.appid, //公衆號名稱,由商戶傳入
"timeStamp": response.timestamp, //時間戳,自1970年以來的秒數
"nonceStr": response.nonce_str, //隨機串
"package": response.package,
"signType": response.signType, //微信簽名方式:
"paySign": response.paySign //微信簽名
},
function (res) {
if (res.err_msg === "get_brand_wcpay_request:ok") {
router.push('/results/check');
} else if (res.err_msg === "get_brand_wcpay_request:cancel") {
message.info("支付取消");
} else if (res.err_msg === "get_brand_wcpay_request:fail") {
router.push('/results/check');
} else {
message.info(res.err_msg);
}
WeixinJSBridge.log(response.err_msg);
}
);
};