feat: login

This commit is contained in:
2025-09-09 16:58:30 +08:00
parent d6457f59f7
commit f33f597a9a
41 changed files with 10998 additions and 3594 deletions

39
src/hooks/web/useCache.ts Normal file
View File

@@ -0,0 +1,39 @@
/**
* 配置浏览器本地存储的方式,可直接存储对象数组。
*/
import WebStorageCache from "web-storage-cache";
type CacheType = "localStorage" | "sessionStorage";
export const CACHE_KEY = {
// 用户相关
ROLE_ROUTERS: "roleRouters",
USER: "user",
// 系统设置
IS_DARK: "isDark",
LANG: "lang",
THEME: "theme",
LAYOUT: "layout",
DICT_CACHE: "dictCache",
// 登录表单
LoginForm: "loginForm",
TenantId: "tenantId",
};
export const useCache = (type: CacheType = "localStorage") => {
const wsCache: WebStorageCache = new WebStorageCache({
storage: type,
});
return {
wsCache,
};
};
export const deleteUserCache = () => {
const { wsCache } = useCache();
wsCache.delete(CACHE_KEY.USER);
wsCache.delete(CACHE_KEY.ROLE_ROUTERS);
// 注意,不要清理 LoginForm 登录表单
};