vue公众号支付+WeixinJSBridge is not defined解决

vue公众号支付 WeixinJSBridge is not defined解决

<template>
    <Row>
        <Row type="flex" class="code-row-bg">
            <Col span="6">12</Col>
            <Col span="6">67</Col>
            <Col span="6">32</Col>
            <Col span="6">54</Col>
        </Row>
    </Row>
</template>


<script>
    export default {
        name: 'jssdk',
        data () {
            return {
                oqqq: '',
                time: 0,
                ispay: 0
            }
        },
        methods:{

                callpay:function (oqqq){
                    if (typeof WeixinJSBridge == "undefined") {
                        if (document.addEventListener) {
                            //监听没起作用
                            document.addEventListener('WeixinJSBridgeReady', this.jsApiCall(oqqq), false)
                        } else if (document.attachEvent) {
                            document.attachEvent('WeixinJSBridgeReady', this.jsApiCall(oqqq))
                            document.attachEvent('onWeixinJSBridgeReady', this.jsApiCall(oqqq))
                        }
                    } else {
                        this.jsApiCall(oqqq)
                    }
                },

                jsApiCall:function (osss){
                    WeixinJSBridge.invoke(
                        'getBrandWCPayRequest',
                        osss,
                        function (res) {
                            // res.err_msg
                            // get_brand_wcpay_request:ok 支付成功,其它统一标记失败
                            // get_brand_wcpay_request:cancel 支付过程中用户取消
                            // get_brand_wcpay_request:fail 支付失败
                            // res.err_desc中文描述 eg.该订单已过期,请重新下单
                            alert(res.err_code+res.err_desc+res.err_msg)
                        }
                    )
                }

        },
        created: function () {

            this.oqqq = {
                "appId": "appId",
                "nonceStr": "nonceStr",
                "package": "package",
                "signType": "signType",
                "timeStamp": "timeStamp",
                "paySign": "paySign"
            }


            //setTimeout(() => {
            //    this.callpay(this.oqqq)
            //}, 2000);

            this.time = setInterval(() =>{
                //超时处理
                //WeixinJSBridge加载需要1-2秒  WeixinJSBridge is not defined
                if (typeof WeixinJSBridge != "undefined" && this.ispay == 0) {
                    this.ispay = 1
                    this.jsApiCall(this.oqqq)
                    clearInterval(this.time)
                }
            },500);

        }
    }
</script>

<style scoped>

</style>

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值