fix(简易模式): 统一前端状态管理,修复路由守卫失效问题
**问题**: 1. login/register 未处理 run_mode,导致 authStore.runMode 不更新 2. 侧边栏使用 simpleMode.value,与路由守卫的 authStore.isSimpleMode 不一致 **修复**: 1. 在 login() 和 register() 中提取并设置 run_mode 2. 统一侧边栏使用 authStore.isSimpleMode **影响**: - 路由守卫现在可以正确工作 - 前端UI状态与后端配置保持一致 - 登录/注册后立即生效,无需刷新
This commit is contained in:
@@ -101,16 +101,22 @@ export const useAuthStore = defineStore('auth', () => {
|
||||
|
||||
// Store token and user
|
||||
token.value = response.access_token
|
||||
user.value = response.user
|
||||
|
||||
// Extract run_mode if present
|
||||
if (response.user.run_mode) {
|
||||
runMode.value = response.user.run_mode
|
||||
}
|
||||
const { run_mode, ...userData } = response.user
|
||||
user.value = userData
|
||||
|
||||
// Persist to localStorage
|
||||
localStorage.setItem(AUTH_TOKEN_KEY, response.access_token)
|
||||
localStorage.setItem(AUTH_USER_KEY, JSON.stringify(response.user))
|
||||
localStorage.setItem(AUTH_USER_KEY, JSON.stringify(userData))
|
||||
|
||||
// Start auto-refresh interval
|
||||
startAutoRefresh()
|
||||
|
||||
return response.user
|
||||
return userData
|
||||
} catch (error) {
|
||||
// Clear any partial state on error
|
||||
clearAuth()
|
||||
@@ -130,16 +136,22 @@ export const useAuthStore = defineStore('auth', () => {
|
||||
|
||||
// Store token and user
|
||||
token.value = response.access_token
|
||||
user.value = response.user
|
||||
|
||||
// Extract run_mode if present
|
||||
if (response.user.run_mode) {
|
||||
runMode.value = response.user.run_mode
|
||||
}
|
||||
const { run_mode, ...userDataWithoutRunMode } = response.user
|
||||
user.value = userDataWithoutRunMode
|
||||
|
||||
// Persist to localStorage
|
||||
localStorage.setItem(AUTH_TOKEN_KEY, response.access_token)
|
||||
localStorage.setItem(AUTH_USER_KEY, JSON.stringify(response.user))
|
||||
localStorage.setItem(AUTH_USER_KEY, JSON.stringify(userDataWithoutRunMode))
|
||||
|
||||
// Start auto-refresh interval
|
||||
startAutoRefresh()
|
||||
|
||||
return response.user
|
||||
return userDataWithoutRunMode
|
||||
} catch (error) {
|
||||
// Clear any partial state on error
|
||||
clearAuth()
|
||||
|
||||
Reference in New Issue
Block a user