敢为人鲜小程序前端代码仓库
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

47 lines
1.5 KiB

5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
5 months ago
3 months ago
  1. // #ifdef H5
  2. import jWeixin from './lib/jweixin-module.js'
  3. // #endif
  4. // 这部分是H5端的微信支付!!!!!!
  5. /**
  6. * 调用微信支付
  7. * @param {Object} res - 支付参数对象包含appIdtimeStampnonceStr等必要信息
  8. * @param {Function} successCallback - 支付成功的回调函数
  9. * @param {Function} failCallback - 支付失败的回调函数
  10. * @param {Function} optionCallback - 配置失败的回调函数
  11. */
  12. export function wxPay(res, successCallback, failCallback, optionCallback) {
  13. // 配置微信JSSDK
  14. jWeixin.config({
  15. debug: false,
  16. appId: res.result.appId, //必填,公众号的唯一标识
  17. jsApiList: ['chooseWXPay'] //必填,需要使用的JS接口列表
  18. });
  19. // JSSDK配置成功后的回调
  20. jWeixin.ready(function() {
  21. // 调用微信支付接口
  22. jWeixin.chooseWXPay({
  23. appId: res.result.appId,
  24. timestamp: res.result.timeStamp, // 支付签名时间戳
  25. nonceStr: res.result.nonceStr, // 支付签名随机串
  26. package: res.result.packageValue, // 统一支付接口返回的prepay_id参数值
  27. signType: res.result.signType, // 签名类型,默认为MD5
  28. paySign: res.result.paySign, // 支付签名
  29. success: function() {
  30. successCallback && successCallback();
  31. },
  32. fail: function(error) {
  33. failCallback && failCallback();
  34. },
  35. cancel : function(){
  36. failCallback && failCallback();
  37. }
  38. });
  39. });
  40. // JSSDK配置失败处理
  41. jWeixin.error(function(res) {
  42. optionCallback && optionCallback()
  43. });
  44. }