Files
loan/src/utils/wexinPay.ts
dute7liang 97daeafbe7 init
2023-12-19 22:23:45 +08:00

55 lines
1.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

import wx from 'weixin-js-sdk'
export function pay(signInfo, payData,callback,errorCallBack?) {
wx.config({
debug: false, // 开启调试模式,调用的所有api的返回值会在客户端alert出来若要查看传入的参数可以在pc端打开参数信息会通过log打出仅在pc端时才会打印。
appId: signInfo.appId, // 必填,公众号的唯一标识
timestamp: signInfo.timestamp, // 必填,生成签名的时间戳
nonceStr: signInfo.nonceStr, // 必填,生成签名的随机串
signature: signInfo.signature, // 必填,签名
jsApiList: ['checkJsApi', 'chooseWXPay'] // 必填需要使用的JS接口列表
})
wx.ready(() => {
wx.checkJsApi({
jsApiList: ['chooseWXPay'],
success: function () {
wx.chooseWXPay({
// 支付签名时间戳注意微信jssdk中的所有使用timestamp字段均为小写。但最新版的支付后台生成签名使用的timeStamp字段名需大写其中的S字符
// appId: payData.appId,
timestamp: payData.timeStamp, // 必填,生成签名的时间戳
nonceStr: payData.nonceStr, // 必填,生成签名的随机串
package: payData.package,
signType: payData.signType,
paySign: payData.paySign, // 必填,签名
success: function (res) { // 支付成功后的回调函数
console.log('支付成功' + res)
if (callback) {
callback()
}
},
fail: function (reg) {
console.log(JSON.stringify(reg))
if (errorCallBack) {
errorCallBack()
}
}
})
},
fail: function (res) {
console.log(JSON.stringify(res))
if (errorCallBack) {
errorCallBack()
}
}
})
})
wx.error(err => {
console.log(JSON.stringify(err))
if (errorCallBack) {
errorCallBack()
}
})
}