PLC设备管理页面修改

This commit is contained in:
Lxq
2026-01-23 11:26:14 +08:00
parent 7e3ff083c7
commit 82764f06d1
17 changed files with 314 additions and 236 deletions

View File

@@ -43,6 +43,27 @@ const TokenManager = {
// 应用启动时初始化token
TokenManager.initToken()
// 登录过期提示防重复标志
let isLoginExpiredShown = false
// 处理登录过期(防重复提示)
const handleLoginExpired = () => {
if (!isLoginExpiredShown) {
isLoginExpiredShown = true
// 清除token
TokenManager.removeToken()
// 显示提示消息
ElMessage.error('登录已过期,请重新登录')
// 跳转到登录页
router.replace('/login').finally(() => {
// 延迟重置标志位,确保跳转完成后再允许下次提示
setTimeout(() => {
isLoginExpiredShown = false
}, 1000)
})
}
}
// 请求拦截器
request.interceptors.request.use(
(config: InternalAxiosRequestConfig) => {
@@ -72,10 +93,8 @@ request.interceptors.response.use(
// 处理业务错误码
if (data.code === 302) {
// 清除token
TokenManager.removeToken()
// 跳转到登录页
router.replace('/login')
// 处理登录过期(防重复提示)
handleLoginExpired()
return Promise.reject(data)
}
@@ -90,11 +109,8 @@ request.interceptors.response.use(
(error) => {
// 处理401未授权错误
if (error.response?.status === 401) {
// 清除token
TokenManager.removeToken()
// 跳转到登录页
ElMessage.error('登录已过期,请重新登录')
router.replace('/login')
// 处理登录过期(防重复提示)
handleLoginExpired()
return Promise.reject(error)
}