优化页面栈
This commit is contained in:
@@ -69,9 +69,28 @@ export const navTo = function(url, {
|
|||||||
const userStore = useUserStore();
|
const userStore = useUserStore();
|
||||||
|
|
||||||
if (needLogin && !userStore.hasLogin) {
|
if (needLogin && !userStore.hasLogin) {
|
||||||
uni.navigateTo({
|
const pages = getCurrentPages();
|
||||||
url: '/pages/complete-info/complete-info'
|
if (pages.length >= 10) {
|
||||||
|
uni.redirectTo({
|
||||||
|
url: '/pages/complete-info/complete-info',
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: '/pages/complete-info/complete-info',
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
uni.redirectTo({
|
||||||
|
url: '/pages/complete-info/complete-info',
|
||||||
|
fail: (err2) => {
|
||||||
|
console.error('redirectTo也失败:', err2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -86,9 +105,30 @@ export const navTo = function(url, {
|
|||||||
currentPage.__onBackCallback__ = onBack;
|
currentPage.__onBackCallback__ = onBack;
|
||||||
}
|
}
|
||||||
|
|
||||||
uni.navigateTo({
|
const pages = getCurrentPages();
|
||||||
url: finalUrl
|
if (pages.length >= 10) {
|
||||||
|
// 页面栈已满,使用redirectTo替代
|
||||||
|
uni.redirectTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
// 失败后尝试redirectTo
|
||||||
|
uni.redirectTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err2) => {
|
||||||
|
console.error('redirectTo也失败:', err2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
export const navBack = function({
|
export const navBack = function({
|
||||||
|
|||||||
@@ -72,9 +72,32 @@ export function navigateToLoginPage(options = {}) {
|
|||||||
? `?${new URLSearchParams(params).toString()}`
|
? `?${new URLSearchParams(params).toString()}`
|
||||||
: '';
|
: '';
|
||||||
|
|
||||||
uni.navigateTo({
|
const finalUrl = `${loginPage}${queryString}`;
|
||||||
url: `${loginPage}${queryString}`
|
const pages = getCurrentPages();
|
||||||
|
|
||||||
|
if (pages.length >= 10) {
|
||||||
|
// 页面栈已满,使用redirectTo替代
|
||||||
|
uni.redirectTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
}
|
||||||
});
|
});
|
||||||
|
} else {
|
||||||
|
uni.navigateTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
// 失败后尝试redirectTo
|
||||||
|
uni.redirectTo({
|
||||||
|
url: finalUrl,
|
||||||
|
fail: (err2) => {
|
||||||
|
console.error('redirectTo也失败:', err2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -217,10 +217,30 @@ export function myRequest(url, data = {}, method = 'GET', port = 9100, headers =
|
|||||||
}
|
}
|
||||||
// 处理业务错误
|
// 处理业务错误
|
||||||
if (resData.data?.code === 401 || resData.data?.code === 402) {
|
if (resData.data?.code === 401 || resData.data?.code === 402) {
|
||||||
|
const pages = getCurrentPages();
|
||||||
|
if (pages.length >= 10) {
|
||||||
|
// 页面栈已满,使用redirectTo替代
|
||||||
|
uni.redirectTo({
|
||||||
|
url:'/packageB/login?flag=nw',
|
||||||
|
fail: (err) => {
|
||||||
|
console.error('页面跳转失败:', err);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else {
|
||||||
uni.navigateTo({
|
uni.navigateTo({
|
||||||
url:'/packageB/login?flag=nw'
|
url:'/packageB/login?flag=nw',
|
||||||
})
|
fail: (err) => {
|
||||||
// navTo('/packageB/login?flag=nw');
|
console.error('页面跳转失败:', err);
|
||||||
|
// 失败后尝试redirectTo
|
||||||
|
uni.redirectTo({
|
||||||
|
url:'/packageB/login?flag=nw',
|
||||||
|
fail: (err2) => {
|
||||||
|
console.error('redirectTo也失败:', err2);
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
useUserStore().logOut()
|
useUserStore().logOut()
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user