微信小程序,微信支付

1.第一步

     wx.login({  
        success: function (log) {  // 通过微信方法拿到登录的code
          that.data.code=log.code  //一般登录的时候储存code 或者直接页面拿到,我这里是页面中获取
          }
        })

2.通过获取到的code调用后端接口拿到后端返回的openid
3.在 .wxml里面处理并拿到金额 如下:

<input bindinput="paymoney" type="digit" value="{{editForm.priceFL}}" placeholder="请输入金额"></input>

在.js里面执行

  data: {
    openid:'',
    paymoney:'',
  },
 paymoney: function (e) {
    var value = e.detail.value;
    value = value.replace(/[^\d\.]|^\./g, '').replace(/\.{2}/g, '.').replace(/^([1-9]\d*|0)(\.\d{1,2})(\.|\d{1})?$/, '$1$2').replace(/^0\d{1}/g, '0');
    this.setData({
      ["editForm.priceFL"]: value
    })
  },

4.把所需要的参数封装到一个对象里面

 let zfcode={
      openId:that.data.openid,  //从后端获取到的 openid
      prepaidFee:that.data.editForm.priceFL, // 输入的金额
      outTradeName:'xu'  // 支付的名称
    }

4.把 zfcode 传给后端 获取到微信支付所需要的接口,然后通过微信调取微信支付。ps:(timeStamp、nonceStr、package、signType、paySign 均为后端返回参数)

 wx.requestPayment({
  "timeStamp":timeStamp, 
  "nonceStr":nonceStr,
  "package": package,
  "signType": signType,
  "paySign":paySign,
  "success":function(res){
    if (res.errMsg == 'requestPayment:ok') {
        wx.showToast({
         title: '支付成功',
         icon: 'none',
         duration: 2000
         })
       };
     },
    "fail":function(res){},
    "complete":function(res){}
 })
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容