vue 中微信支付,显示WeiXinJSBridge is not defined的问题

务在created中触发,通过button点击触发或者延时触发,目的是等待WeixinJSBridge加载完毕

1
2
3
4
5
6
created() {
let _this = this;
setTimeout(() => {
_this.pay(_this.payment);
}, 3000);
},
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
var vm = this;
if (typeof WeixinJSBridge == "undefined") {//微信浏览器内置对象。参考微信官方文档
if (document.addEventListener) {
document.addEventListener('WeixinJSBridgeReady', vm.onBridgeReady(data), false);
} else if (document.attachEvent) {
document.attachEvent('WeixinJSBridgeReady', vm.onBridgeReady(data));
document.attachEvent('onWeixinJSBridgeReady',vm.onBridgeReady(data));
}
} else {
vm.onBridgeReady(data);
}

onBridgeReady: function(data) {
var vm = this;
WeixinJSBridge.invoke(
'getBrandWCPayRequest', {
debug:true,
"appId":data.appId,//公众号名称,由商户传入
"timeStamp":data.timeStamp,//时间戳
"nonceStr":data.nonceStr,//随机串
"package":data.packageValue,//预支付id
"signType":data.signType,//微信签名方式
"paySign":data.paySign,//微信签名
},
function(res) {
console.log(res.err_msg)
//debugger;
// 使用以上方式判断前端返回,微信团队郑重提示:res.err_msg将在用户支付成功后返回ok,但并不保证它绝对可靠。
if (res.err_msg == "get_brand_wcpay_request:ok") {
alert("支付成功")
//vm.$router.push("/reservedBerth");
} else {
//alert("支付失败,请跳转页面"+res.err_msg);
}
});
},

Powered by AppBlog.CN     浙ICP备14037229号

Copyright © 2012 - 2020 APP开发技术博客 All Rights Reserved.

访客数 : | 访问量 :