uniapp开发H5微信支付
const jweixin = require('jweixin-module');
const getPay = (params = {}) => {
let provider, orderInfo;
let getProvider_type = null;
getProvider().then(res => {
getProvider_type = res;
})
orderInfo = 'orderInfo';
orderInfo = {
"appId": params.appId,
"timeStamp": params.timeStamp,
"nonceStr": params.nonceStr,
"package": params.package,
"signType": params.signType,
"paySign": params.paySign
};
let data = params;
return new Promise((reslove, reject) => {
jweixin.config({
debug: false,
appId: data.appId,
timestamp: data.timeStamp,
nonceStr: data.nonceStr,
signature: data.paySign,
jsApiList: ['chooseWXPay']
})
jweixin.error(function(err) {
});
jweixin.ready(function(ren) {
jweixin.chooseWXPay({
timestamp: data.timeStamp,
nonceStr: data.nonceStr,
package: data.package,
signType: data.signType,
paySign: data.paySign,
success: function(res) {
uni.showToast({
title: '支付成功'
});
reslove({
type: true,
back: 'success'
})
},
cancel: function(can) {
uni.showToast({
title: '取消支付',
icon: 'none'
});
reslove({
type: false,
back: 'cancel'
})
},
fail: function(err) {
uni.showToast({
title: '支付失败',
icon: 'none'
});
reslove({
type: false,
back: 'fail'
})
}
})
})
})
return new Promise((reslove, reject) => {
uni.requestPayment({
"provider": getProvider_type && getProvider_type.provider && getProvider_type
.provider[0] ? getProvider_type.provider[0] : 'wxpay',
...orderInfo,
success(res) {
reslove(res)
},
fail(err) {
reject(err)
}
})
})
}