import Cookies from 'js-cookie'; /** * window.localStorage 浏览器永久缓存 * @method set 设置永久缓存 * @method get 获取永久缓存 * @method remove 移除永久缓存 * @method clear 移除全部永久缓存 */ export const Local = { // 查看 v2.4.3版本更新日志 setKey(key: string) { // @ts-ignore return `${__NEXT_NAME__}:${key}`; }, // 设置永久缓存 set(key: string, val: T) { window.localStorage.setItem(Local.setKey(key), JSON.stringify(val)); }, // 获取永久缓存 get(key: string) { let json = window.localStorage.getItem(Local.setKey(key)); return JSON.parse(json); }, // 移除永久缓存 remove(key: string) { window.localStorage.removeItem(Local.setKey(key)); }, // 移除全部永久缓存 clear() { window.localStorage.clear(); }, }; /** * window.sessionStorage 浏览器临时缓存 * @method set 设置临时缓存 * @method get 获取临时缓存 * @method remove 移除临时缓存 * @method clear 移除全部临时缓存 */ export const Session = { // 设置临时缓存 set(key: string, val: any) { return Cookies.set(key, JSON.stringify(val)); }, // 获取临时缓存 get(key: string) { const v = Cookies.get(key); if (v !== undefined) { return JSON.parse(v) as T; } return v; }, // 移除临时缓存 remove(key: string) { return Cookies.remove(key); }, // 移除全部临时缓存 clear() { Object.keys(Cookies.get()).forEach(function (cookieName) { Cookies.remove(cookieName); }); }, };