fix(login): logout

This commit is contained in:
zhangheng
2026-04-13 14:35:27 +08:00
parent 3418d0d2c4
commit e1a5b06cad
2 changed files with 5 additions and 0 deletions

View File

@@ -17,6 +17,7 @@ fetch 参数:
"use client" "use client"
import { useUserStore } from "@/app/store/user" import { useUserStore } from "@/app/store/user"
import { usePermissionStore } from "@/components/label/store/auth"
import { deleteCookie, refreshKey } from "@/components/login/api" import { deleteCookie, refreshKey } from "@/components/login/api"
import { isNumber } from "@/libs/util" import { isNumber } from "@/libs/util"
@@ -40,6 +41,7 @@ interface OptionsProps {
async function httpfetch<T>(options: OptionsProps): Promise<T> { async function httpfetch<T>(options: OptionsProps): Promise<T> {
const { removeUserInfo, refreshToken } = useUserStore.getState() const { removeUserInfo, refreshToken } = useUserStore.getState()
const { logout } = usePermissionStore.getState()
const access_token = useUserStore.getState().access_token const access_token = useUserStore.getState().access_token
const refresh_token = useUserStore.getState().refresh_token const refresh_token = useUserStore.getState().refresh_token
@@ -197,6 +199,7 @@ async function httpfetch<T>(options: OptionsProps): Promise<T> {
} finally { } finally {
// 清空身份信息并跳转至登录页面 // 清空身份信息并跳转至登录页面
removeUserInfo() removeUserInfo()
logout()
window.location.href = "/login" window.location.href = "/login"
} }
} }
@@ -241,6 +244,7 @@ async function httpfetch<T>(options: OptionsProps): Promise<T> {
} finally { } finally {
// 清空身份信息并跳转至登录页面 // 清空身份信息并跳转至登录页面
removeUserInfo() removeUserInfo()
logout()
window.location.href = "/login" window.location.href = "/login"
} }
} else if (status >= 510) { } else if (status >= 510) {

View File

@@ -136,6 +136,7 @@ export default function AppLayout({
const handleLogout = async () => { const handleLogout = async () => {
useUserStore.getState().removeUserInfo() useUserStore.getState().removeUserInfo()
usePermissionStore.getState().logout()
process.env.NEXT_PUBLIC_OUTPUT_TYPE === "standalone" && process.env.NEXT_PUBLIC_OUTPUT_TYPE === "standalone" &&
(await deleteCookie()) (await deleteCookie())
router.push("/login") router.push("/login")