64 lines
1.3 KiB
JavaScript
64 lines
1.3 KiB
JavaScript
import BasePlatform from './BasePlatform';
|
|
/**
|
|
* 小程序平台
|
|
*/
|
|
class MiniProgramPlatform extends BasePlatform {
|
|
constructor() {
|
|
super();
|
|
this.code = 'MP-WEIXIN';
|
|
this.env = 'miniProgram';
|
|
}
|
|
getPayData(url, data) {
|
|
return data;
|
|
}
|
|
pay({ data }) {
|
|
return new Promise((resolve, reject) => {
|
|
let provider = "weixin";
|
|
uni.requestPayment({
|
|
provider,
|
|
...data,
|
|
success: res => {
|
|
// console.log(res)
|
|
},
|
|
fail: err => {
|
|
// console.log('common.wxMpPay-error', err)
|
|
},
|
|
complete: res => {
|
|
console.log('complete (res)', res)
|
|
if (res.errMsg == 'requestPayment:fail cancel') {
|
|
this.toast({
|
|
title: '取消支付',
|
|
icon: 'none',
|
|
duration: 500,
|
|
success: () => {
|
|
/* 取消订单 */
|
|
}
|
|
})
|
|
|
|
resolve('cancel')
|
|
}
|
|
if (res.errMsg == 'requestPayment:ok') {
|
|
this.toast({
|
|
title: '支付成功',
|
|
icon: 'success',
|
|
duration: 500,
|
|
success: () => {
|
|
resolve('success')
|
|
}
|
|
})
|
|
}
|
|
}
|
|
})
|
|
})
|
|
}
|
|
|
|
share({ title, desc, image, url }) {
|
|
wx.showShareMenu({
|
|
withShareTicket: true,
|
|
menus: ['shareAppMessage', 'shareTimeline']
|
|
});
|
|
// 监听用户点击分享按钮
|
|
wx.onShareAppMessage(() => ({ title, imageUrl: image }));
|
|
}
|
|
}
|
|
export default MiniProgramPlatform; |