当前位置: 首页 > news >正文

chrome extension开发框架WXT之WXT Storage api解析

以下是对 WxtStorage 接口及其相关类型中各方法的参数、返回值、用法和适用场景的详细解释:

getItem 方法

getItem<TValue>(key: StorageItemKey, opts: GetItemOptions<TValue> & {
    fallback: TValue }): Promise<TValue>;
getItem<TValue>(key: StorageItemKey, opts?: GetItemOptions<TValue>): Promise<TValue | null>;
  • 参数
    • key:类型为 StorageItemKey,格式是 ${StorageArea}:${string},用于指定要获取的存储项的键。
    • opts:可选参数,类型为 GetItemOptions<TValue>,其中 fallback 为默认值。若提供 fallback 且未找到对应键值时,会返回该默认值;若不提供 fallback,未找到键值时返回 null
  • 返回值
    • 若提供 fallback,返回一个 Promise<TValue>,表示异步获取到的存储项值。
    • 若未提供 fallback,返回 Promise<TValue | null>,可能为存储项值,也可能为 null
  • 用法
// 获取值,未找到时返回 null
storage.getItem<number>("local:installDate").then(value => {
   
  console.log(value);
});

// 获取值,未找到时返回 fallback 值
storage.getItem<number>("local:installDate", {
    fallback: 0 }).then(value => {
   
  console.log(value);
});
  • 适用场景:需要从存储中获取单个值时使用,例如获取用户的安装日期、计数器值等。

getItems 方法

getItems(keys: Array<StorageItemKey | WxtStorageItem<any, any> | {
    key: StorageItemKey; options?: GetItemOptions<any>; }>): Promise<Array<{
    key: StorageItemKey; value: any; }>>;
  • 参数
    • keys:数组类型,元素可以是 StorageItemKeyWxtStorageItem 或者包含 keyoptions 的对象,用于指定要获取的多个存储项。
  • 返回值
    • 返回 Promise<Array<{ key: StorageItemKey; value: any; }>>,表示异步获取到的多个存储项的键值对数组。
  • 用法
storage.getItems(["local:installDate", "session:someCounter"]).then(items => {
   
  items.forEach(item => {
   
    console.log(item.key, item.value);
  });
});
  • 适用场景:需要同时获取多个存储项的值时使用,例如一次性获取用户的多个设置项。

getMeta 方法

getMeta<T extends Record<string, unknown>>(key: StorageItemKey): Promise<T>;
  • 参数
    • key:类型为 StorageItemKey,用于指定要获取元数据的存储项的键。
  • 返回值
    • 返回 Promise<T>,表示异步获取到的存储项的元数据对象。
  • 用法
storage.getMeta("local:installDate").then(meta => {
   
  console.log(meta);
});
  • 适用场景:需要获取存储项的元数据时使用,例如存储项的版本信息、创建时间等。

getMetas 方法

getMetas(keys: Array<StorageItemKey | WxtStorageItem<any, any>>): Promise<Array<{
    key: StorageItemKey; meta: any; }>>;
  • 参数
    • keys:数组类型,元素可以是 StorageItemKeyWxtStorageItem,用于指定要获取元数据的多个存储项。
  • 返回值
    • 返回 Promise<Array<{ key: StorageItemKey; meta: any; }>>,表示异步获取到的多个存储项的键和对应的元数据数组。
  • 用法
storage.getMetas(["local:installDate", "session:someCounter"]).then(metas => {
   
  metas.forEach(meta => {
   
    console.log(meta.key, meta.meta);
  });
});
  • 适用场景:需要同时获取多个存储项的元数据时使用。

setItem 方法

setItem<T>(key: StorageItemKey, value: T | null): 

相关文章:

  • 数列分块入门4
  • 信奥赛之c++课后练习题及解析(关系运算符+选择结构)
  • JAVA中正则表达式的入门与使用
  • Matlab 分数阶PID控制永磁同步电机
  • Codeforces Round 1016 (Div. 3) C ~ G 题解
  • Golang|协程
  • python-1. 找单独的数
  • 关于nacos注册的服务的ip异常导致网关路由失败的问题
  • 科技项目验收测试怎么做?验收测试报告如何获取?
  • 网安小白筑基篇六:数据库(增删改语法、表约束、查询语句、多表查询、附phppython小练习)
  • Kubernetes集群环境搭建与初始化
  • 【实战手册】8000w数据迁移实践:MySQL到MongoDB的完整解决方案
  • 蓝桥杯备赛知识点总结
  • 小白学习java第12天(下):IO流之字符输入输出
  • 联影医疗智能体 重构医疗新范式
  • 【物联网】PWM控制蜂鸣器
  • aosp13增加摄像头控制功能实现
  • C#MVC项目引用Swagger的详细步骤
  • C++指针(二)
  • DAOS系统架构-组件
  • 注册一个小网站/郑州网站开发公司
  • 租电信网站服务器/seo综合查询怎么用
  • 无代码做网站/四川百度推广排名查询
  • 北京网站建设方案案例/无锡百度竞价公司
  • asp.net 微信网站/站外seo推广
  • 网站优化外包/中央新闻直播今天