签入版本

This commit is contained in:
2026-10-11 19:06:33 +08:00
parent 17d28de8b7
commit 4084c6bd17
674 changed files with 58855 additions and 1892 deletions
@@ -32,7 +32,10 @@ config.headers['Authorization'] = `Bearer ${token}`;
### 响应拦截器(统一错误处理)
```typescript
// 响应处理逻辑
// 响应处理逻辑(错误提示使用 NaiveUI 的离散式消息 API)
import { useMessage } from '@/hooks/web/useMessage';
const $message = useMessage();
const { code, data, msg } = res.data;
if (code === 0) {
@@ -45,11 +48,11 @@ if (code === 401 || res.status === 401) {
if (code === 403 || res.status === 403) {
// 权限不足 / 租户异常 / 演示模式拦截
ElMessage.error(msg || '无访问权限');
$message.error(msg || '无访问权限');
}
// 其他业务错误,显示提示
ElMessage.error(msg || '操作失败');
$message.error(msg || '操作失败');
```
:::tip 响应处理规则
@@ -66,12 +69,17 @@ ElMessage.error(msg || '操作失败');
// code === 401(ResultEnum.TIMEOUT)
case ResultEnum.TIMEOUT:
if (router.currentRoute.value?.name === PageEnum.BASE_LOGIN_NAME) return;
ElMessageBox.confirm('登录身份已失效,请重新登录!', '提示', { type: 'warning' })
.then(() => {
$dialog.warning({
title: '提示',
content: '登录身份已失效,请重新登录!',
positiveText: '确定',
closable: false,
maskClosable: false,
onPositiveClick: () => {
storage.clear();
window.location.href = PageEnum.BASE_LOGIN; // '/login'
})
.catch(() => {});
},
});
break;
```