@lzwme/fe-utils
    Preparing search index...

    Class LiteStorage<T>

    轻量的本地文件持久性数据存储。主要用于简单的配置信息持久化

    const stor = await new LiteStorage({ uuid: 'test1' }).ready();

    // 示例1: 读取缓存
    const config = stor.get();
    console.log(config);
    // 缓存操作
    // 存入
    stor.save(config);

    stor.getItem('key1');
    stor.setItem('key2', { a: 1 });
    stor.removeItem('key2');
    stor.clear();

    Type Parameters

    • T extends object = Record<string, unknown>
    Index

    Constructors

    Accessors

    • get config(): {
          filepath: string;
          initial: T;
          singleMode: boolean;
          uuid: string;
          version: string;
      }

      Returns {
          filepath: string;
          initial: T;
          singleMode: boolean;
          uuid: string;
          version: string;
      }

      • filepath: string

        缓存文件保存的路径

      • initial: T

        默认初始值

      • singleMode: boolean

        是否仅考虑单进程模式读写(内存)。默认为 false,每次保持前都会重载数据

      • uuid: string

        存储类型的唯一标记,用于区分多个不同类型的存储。默认为 defaults

      • version: string

        缓存版本。当版本不匹配时将清空已有数据

    Methods

    • 清理缓存

      Parameters

      • isAll: boolean = false

        是否清空全部缓存(即移除缓存文件重新初始化)。默认为 false,只清空当前 uuid 约束下的缓存数据

      Returns Promise<LiteStorage<T>>

    • 以 options.uuid 为 key 获取数据

      Parameters

      • raw: boolean = false

        是否返回原始数据(不进行深拷贝)。默认为 false

      Returns T

    • Type Parameters

      • K extends string | number | symbol

      Parameters

      • key: K

      Returns T[K]

    • 主动保存

      Parameters

      • Optionalvalue: T
      • mode: "merge" | "cover" = 'merge'
      • reload: boolean = true

      Returns Promise<LiteStorage<T>>

    • 设置并保存一个数据项。提示:setItem、removeItem 都会触发文件读写,应避免密集高频调用

      Type Parameters

      • K extends string | number | symbol

      Parameters

      • key: K
      • value: T[K] extends object ? Partial<any[any]> : T[K]
      • mode: "merge" | "cover" = 'cover'

      Returns Promise<LiteStorage<T>>