找到问题了,iOS9不支持ES6,我用的是原生js ,把所有新语法换成老的语法就好了
JSAPI支付报错 ReferenceError:Cant't find variableJSAPI 支付 :在iOS9系统下,微信7.0.4,支付时报错ReferenceError:Can't find variable doPay。 (doPay 是我调用支付的方法)。代码如下 我把doPay 方法 放到另外一个js 文件里面,调用doPay 的时候 仍然报错ReferenceError:Can't find variable doPay,但是当我把if 条件判断注释掉,在doPay方法里面直接调onBridgeReady(), 报 ReferenceError:Can't find variable onBridgeReady. 这段代码在安卓手机和iOS 其他系统是没有问题的,可以正常支付,只有在iOS9 报错,请帮我分析一下,是什么问题 var payData; function onBridgeReady() { var signType = payData.signType; if (!signType) { signType = "MD5"; } WeixinJSBridge.invoke('getBrandWCPayRequest', { "appId" : payData.appId, // 公众号名称,由商户传入 "timeStamp" : payData.timeStamp, // 时间戳,自1970年以来的秒数 "nonceStr" : payData.nonceStr, // 随机串 "package" : payData.package, "signType" : signType, // 微信签名方式: "paySign" : payData.paySign// 微信签名 }, function(res) { let tid = payData.tid if (res.err_msg == "get_brand_wcpay_request:ok") { window.location.href = 'success.html?tid=' + tid } else if ((res.err_msg === "get_brand_wcpay_request:cancel")) { // 用户取消支付 cancelPay(tid) } else { alertwf(JSON.stringify(res)); } }); } function doPay(resData) { alert('doPay') payData = resData; hide(); if (typeof WeixinJSBridge == "undefined") { if (document.addEventListener) { document.addEventListener('WeixinJSBridgeReady', onBridgeReady, false); } else if (document.attachEvent) { document.attachEvent('WeixinJSBridgeReady', onBridgeReady); document.attachEvent('onWeixinJSBridgeReady', onBridgeReady); } else { alertwf('not in weixin'); } return; } else { onBridgeReady(); } } [图片]
2019-10-29我也遇到了,在iOS9系统,报错ReferenceError
微信支付jsapi在ios9、10下兼容性问题在h5页面写有唤起微信支付的代码,该页面在ios9和10下,无法触发页面上按钮的onclick事件 WeixinJSBridge.invoke( 'getBrandWCPayRequest', { "appId": param.appId, //公众号名称,由商户传入 "timeStamp": param.timeStamp, //时间戳,自1970年以来的秒数 "nonceStr": param.nonceStr, //随机串 "package": param.package, "signType": param.signType, //微信签名方式: "paySign": param.paySign //微信签名 },
2019-10-28