登录界面调整
This commit is contained in:
@ -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
|
||||
|
||||
Reference in New Issue
Block a user