bixi
Version:
企业级中后台前端解决方案
25 lines (21 loc) • 604 B
text/typescript
import { ITokenModel } from '../token/interface';
import { IStore } from './interface';
/**
* `sessionStorage` storage, **lost after closing the browser**.
*
* ```ts
* { provide: BIXI_STORE_TOKEN, useClass: SessionStorageStore }
* ```
*/
export class SessionStorageStore implements IStore {
get(key: string): ITokenModel {
return JSON.parse(sessionStorage.getItem(key) || '{}') || {};
}
set(key: string, value: ITokenModel | null): boolean {
sessionStorage.setItem(key, JSON.stringify(value));
return true;
}
remove(key: string) {
sessionStorage.removeItem(key);
}
}