/** * 存储工具类 * 提供localStorage和sessionStorage操作方法 */ export class Storage { /** * localStorage 存储 */ static set(key: string, value: any): void { localStorage.setItem(key, JSON.stringify(value)); } static get(key: string, defaultValue?: T): T { const value = localStorage.getItem(key); if (!value) return defaultValue as T; try { return JSON.parse(value); } catch { // 如果解析失败,返回原始字符串 return value as unknown as T; } } static remove(key: string): void { localStorage.removeItem(key); } /** * sessionStorage 存储 */ static sessionSet(key: string, value: any): void { sessionStorage.setItem(key, JSON.stringify(value)); } static sessionGet(key: string, defaultValue?: T): T { const value = sessionStorage.getItem(key); if (!value) return defaultValue as T; try { return JSON.parse(value); } catch { // 如果解析失败,返回原始字符串 return value as unknown as T; } } static sessionRemove(key: string): void { sessionStorage.removeItem(key); } }