登录界面调整

This commit is contained in:
dxc
2026-02-04 15:41:51 +08:00
parent ea17413bc1
commit c1c525b699
5 changed files with 73 additions and 34 deletions

View File

@ -14,13 +14,12 @@ export const useUserStore = defineStore('user', () => {
try {
const res = await login(loginForm)
// [调试日志] 查看实际返回的数据结构 (调试完成后可删除)
// [调试日志] 查看实际返回的数据结构
console.log('Login API Response:', res)
// ============================================================
// [关键修复] 兼容 Axios 拦截器的不同处理方式
// 如果拦截器已经返回了 response.data那么 res 本身就是数据对象
// 如果拦截器返回的是原始 response那么数据在 res.data 中
// ============================================================
const data = res.data || res
@ -46,9 +45,10 @@ export const useUserStore = defineStore('user', () => {
// 持久化存储 Token
localStorage.setItem('token', data.access_token)
return true
return true // 返回 true 表示登录成功
} catch (error) {
console.error('Login failed:', error)
// 返回 false 表示登录失败Login 组件会据此停止跳转
return false
}
}
@ -61,13 +61,9 @@ export const useUserStore = defineStore('user', () => {
username.value = ''
// 2. 清空 LocalStorage (硬盘)
// 建议使用 removeItem 而不是 clear避免误删该域名下其他非登录数据
localStorage.removeItem('token')
localStorage.removeItem('role')
localStorage.removeItem('username')
// 注意:这里不再执行 window.location.reload()
// 而是把跳转控制权交给调用者 (如 App.vue 中的 router.push)
}
// 3. Getters / Helpers