Vue调用微信支付

this.$axios.get(wxPay,{
  params:{
    order_pay_no:this.order_pay_no,//订单编号
    payment_type:1//支付类型
  }
 }).then((res)=>{
    this.loadS=false
      if(parseInt(res.data.errCode)>=0){
        this.sData=res.data.data.jsApiParameters
        this.payMoney()
      }else{
         this.toast = this.$createToast({
           txt: ‘调用微信支付数据失败‘,
           type: ‘txt‘
          }).show()
       }
    }).catch((err)=>{
       console.log(err)
 }) 
payMoney(){//调用微信的请求方法
   let vm = this;
   if (typeof window.WeixinJSBridge == ‘undefined‘) {
     if (document.addEventListener) {
       document.addEventListener(‘WeixinJSBridgeReady‘, vm.onBridgeReady(vm.sData), false)
     }else if (document.attachEvent) {
        document.attachEvent(‘WeixinJSBridgeReady‘, vm.onBridgeReady(vm.sData))
        document.attachEvent(‘onWeixinJSBridgeReady‘, vm.onBridgeReady(vm.sData))
      }
    } else {
      vm.onBridgeReady(vm.sData)
     }
  },
  onBridgeReady (data) {
    let self = this
    window.WeixinJSBridge.invoke(
      ‘getBrandWCPayRequest‘, 
       data, 
     function (res) {
        if (res.err_msg === ‘get_brand_wcpay_request:ok‘) {//支付成功
          sessionStorage.removeItem(‘route_reserve_key‘)
          sessionStorage.removeItem(‘stop_step‘)
          sessionStorage.removeItem(‘idt_route_stop‘)
          self.$router.push({name:‘MemberTips‘,params:{status_id:2}})//支付成功跳转的页面
       }else {
          self.$router.push({name:‘MemberTips‘,params:{status_id:0}})//支付失败跳转的页面
           }
         }
      )
   },

 

Vue调用微信支付

上一篇:ViewPager+fragment实现微信5.0带滚动条的多屏滑动效果


下一篇:微信JSSDK的使用步骤