更改全局监听 code配置,改变tab切换逻辑
This commit is contained in:
@@ -189,9 +189,29 @@ const responseInterceptor = (response: AxiosResponse) => {
|
||||
return Promise.reject(new Error('模块未开通'));
|
||||
}
|
||||
|
||||
// 业务失败默认走全局提示;如果页面声明自己处理,这里只抛错不弹窗。
|
||||
if (code !== undefined && code !== 0 && code !== 200 && code !== 403) {
|
||||
const errorMsg = message || `请求失败(${code})`;
|
||||
// 定义已知的正常 code
|
||||
const knownSuccessCodes = [0, 200];
|
||||
// 定义已知的业务错误 code(这些 code 会显示后端返回的 message)
|
||||
const knownErrorCodes = [401, 402, 403, 404, 429, 500, 502, 503];
|
||||
|
||||
// 业务成功,直接返回
|
||||
if (code !== undefined && knownSuccessCodes.includes(code)) {
|
||||
return res;
|
||||
}
|
||||
|
||||
// 业务失败处理
|
||||
if (code !== undefined && !knownSuccessCodes.includes(code)) {
|
||||
let errorMsg: string;
|
||||
|
||||
// 已知的业务错误 code,使用后端返回的 message
|
||||
if (knownErrorCodes.includes(code)) {
|
||||
errorMsg = message || `请求失败(${code})`;
|
||||
} else {
|
||||
// 未知的 code,统一提示后端异常
|
||||
errorMsg = '后端异常,请联系管理员';
|
||||
console.error(`未知的业务错误码: ${code}, 原始消息: ${message}`);
|
||||
}
|
||||
|
||||
showErrorMessage(errorMsg, config);
|
||||
return Promise.reject(new Error(errorMsg));
|
||||
}
|
||||
|
||||
@@ -2044,6 +2044,16 @@ const loadWorkflowFromDsl = (dsl: any) => {
|
||||
ElMessage.error('工作流加载失败');
|
||||
}
|
||||
};
|
||||
// 监听创作模式变化,自动切换左侧 Tab
|
||||
watch(isCreationMode, (newValue) => {
|
||||
if (newValue) {
|
||||
// 进入创作模式,切换到"工作空间"Tab
|
||||
leftPanelTab.value = 'workspace';
|
||||
} else {
|
||||
// 退出创作模式,切换到"当前选中"Tab
|
||||
leftPanelTab.value = 'selected';
|
||||
}
|
||||
});
|
||||
onMounted(async () => {
|
||||
await getList();
|
||||
await nextTick();
|
||||
|
||||
Reference in New Issue
Block a user