This commit is contained in:
9
utils/payment-attempt.js
Normal file
9
utils/payment-attempt.js
Normal file
@@ -0,0 +1,9 @@
|
||||
export const isUnknownPaymentResult = (error) => Boolean(error?.paymentResultUnknown);
|
||||
|
||||
export const getPaymentErrorMessage = (error, fallback = '支付失败,请稍后重试') => {
|
||||
if (isUnknownPaymentResult(error)) {
|
||||
return '支付结果未知,请稍后查看订单状态';
|
||||
}
|
||||
|
||||
return error?.msg || error?.message || fallback;
|
||||
};
|
||||
@@ -47,8 +47,15 @@ const request = (options) => {
|
||||
reject(responseData);
|
||||
},
|
||||
fail: (err) => {
|
||||
showErrorToast('网络请求失败');
|
||||
reject(err);
|
||||
if (options.showError !== false) {
|
||||
showErrorToast('网络请求失败');
|
||||
}
|
||||
// A transport failure does not tell us whether the backend created a
|
||||
// payment. Callers must reconcile status and must not retry creation.
|
||||
reject({
|
||||
...err,
|
||||
paymentResultUnknown: true
|
||||
});
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user