基于 key-value 键值对的 cookie/localStorage/sessionStorage浏览器存储

384 阅读1分钟

simple-browser-store 使用说明

特点: 基于object键值对格式存储前端数据,统一处理cookie/localStorage/sessionStorage,数据更新类似react.setState()总是部分更新

  1. 安装 ,npm / yarn 安装
npm install simple-browser-store
yarn add simple-browser-store
  1. 使用
import { getData, setData, removeData } from 'simple-browser-store';

// cookie 存储
const appKey = '__app__';
const cookieData = getData('cookie', appKey);
setData('cookie', appKey, { newProp: 'new prop value' });

// localStorage 存储
const localStorageData = getData('localStorage', appKey);
setData('localStorage', appKey, { newProp: 'new prop value' });

  1. typescript 类型定义
export declare type StorageType = 'cookie' | 'localStorage' | 'sessionStorage';

export declare const getData: (type: StorageType, key: string) => Record<string, unknown>;

export declare const setData: (
  type: StorageType,
  key: string,
  value: Record<string, unknown>,
  cookieOptions?: CookieAttributes
) => void;

export declare const removeData: (type: StorageType, key: string) => void;

  1. getData返回包含key-value键值对的object对象(不会为null)

  2. setData以对象扩展 (Object.assign)方式更新或者添加key-value pair