调用微信支付时前端怎么处理返回的支付参数?
我在做移动端H5支付,后端返回了微信支付需要的参数(比如appId、timeStamp这些),但不知道在Vue里该怎么调起微信支付。试过直接用WeixinJSBridge.invoke,但有时候没反应,是不是我传参格式不对?
这是我现在写的代码:
<template>
<button @click="startWxPay">微信支付</button>
</template>
<script>
export default {
methods: {
startWxPay() {
const payData = this.payParams; // 后端返回的原始数据
if (typeof WeixinJSBridge === 'undefined') return;
WeixinJSBridge.invoke('getBrandWCPayRequest', pay日晚间, res => {
if (res.err_msg === 'get_brand_wcpay_request:ok') {
// 支付成功
}
});
}
}
}
</script>
WeixinJSBridge.invoke调用的时候参数名拼写错了,应该是payData而不是pay日晚间。这个可能是为什么有时候没有反应的原因。另外,为了确保
WeixinJSBridge已经加载,可以加个定时检查或者事件监听。更好的写法是封装一个函数来处理这个逻辑,这样代码更整洁。以下是修改后的代码示例:
这样处理后,可以确保在
WeixinJSBridge准备好之后再调用支付接口。希望这能解决问题。