1. 程式人生 > >vue.js 微信支付前端程式碼

vue.js 微信支付前端程式碼

onBridgeReady: function () {
      const openId = localStorage.getItem('openId')
      payService.payment(this.$route.params.orderId, 1, openId).then(rt => { //1:支付型別,可不填
        this.message = rt.t
        WeixinJSBridge.invoke(
             'getBrandWCPayRequest', {
               'appId': this.message.appId,
               'timeStamp': this.message.timeStamp,
               'nonceStr': this.message.nonceStr,
               'package': this.message.package,
               'signType': this.message.signType,
               'paySign': this.message.paySign
             },
          function (res) {
            console.log(res)
            if (res.err_msg === 'get_brand_wcpay_request:ok') {
              Toast('微信支付成功')
              this.$router.push('/MineOrder')
            } else if (res.err_msg === 'get_brand_wcpay_request:cancel') {
              Toast('使用者取消支付')
              // window.location.href = 'gift_failview.do?out_trade_no=' + this.orderId
            } else if (res.err_msg === 'get_brand_wcpay_request:fail') {
              Toast('網路異常,請重試')
            }
          }
        )
      })
    },
    callpay: function () {
      if (typeof WeixinJSBridge === 'undefined') {
        if (document.addEventListener) {
          document.addEventListener('WeixinJSBridgeReady', this.onBridgeReady(), false)
        } else if (document.attachEvent) {
          document.attachEvent('WeixinJSBridgeReady', this.onBridgeReady())
          document.attachEvent('onWeixinJSBridgeReady', this.onBridgeReady())
        }
      } else {
        this.onBridgeReady()
      }
    }