优化了popup

This commit is contained in:
zhu
2026-05-12 11:10:21 +08:00
parent a59178b816
commit cf7ea741a6
6 changed files with 638 additions and 660 deletions

View File

@@ -1,35 +1,42 @@
import {computed, onMounted, ref} from "vue";
import {getToken, logout, setToken} from "@/shared/auth";
import { computed, onMounted, ref } from 'vue';
import { getToken, logout, setToken } from '@/shared/auth';
/**
* Popup 的登录状态与操作。
*/
export const useLogin = () => {
const token = ref<string | null>(null);
/** 当前是否已登录。 */
const isLoggedIn = computed(() => token.value !== null);
/**
* 登录
* 登录并保存 token。
*/
const handleLogin = async () => {
let value = "xxx"
await setToken(value)
token.value = value
}
const value = 'xxx';
await setToken(value);
token.value = value;
};
/**
* 退出登录
* 退出登录并清理本地状态。
*/
const handleLogout = async () => {
await logout()
token.value = null
}
await logout();
token.value = null;
};
/**
* 组件挂载时,从存储恢复 token。
*/
onMounted(async () => {
token.value = await getToken()
})
token.value = await getToken();
});
return {
isLoggedIn,
handleLogin,
handleLogout,
}
}
};
};