20 lines
849 B
JavaScript
20 lines
849 B
JavaScript
// Shared result pages for WeChat, Alipay and Douyin. Keep the existing page design.
|
|
export function jumpToPaymentSuccess() {
|
|
return jumpToPaymentResult('/pages/order_package/order_submit_ok/order_submit_ok');
|
|
}
|
|
|
|
export function jumpToPaymentFailure() {
|
|
return jumpToPaymentResult('/pages/order_package/order_submit_error/order_submit_error');
|
|
}
|
|
|
|
function jumpToPaymentResult(url) {
|
|
const pages = typeof getCurrentPages === 'function' ? getCurrentPages() : [];
|
|
if (pages[pages.length - 1]?.route === url.slice(1)) return Promise.resolve(true);
|
|
return new Promise(resolve => {
|
|
uni.navigateTo({ url, success: () => resolve(true), fail: () => {
|
|
// A full page stack must not leave a confirmed payment on the checkout screen.
|
|
uni.redirectTo({ url, success: () => resolve(true), fail: () => resolve(false) });
|
|
} });
|
|
});
|
|
}
|