browser.storage API 会使用 StorageArea 接口。
方法
clear()
browser.storage.StorageArea.clear(): Promise<void>
从存储空间中移除所有内容。
返回
-
承诺<void>
Chrome 95 及更高版本 browser.*(自 Chrome 148 起)在成功时解析或在失败时拒绝的 Promise。
get()
browser.storage.StorageArea.get(
keys?: string | string[] | object,
): Promise<object>
从存储空间中获取一个或多个内容。
参数
-
密钥
字符串 | 字符串 [] | 对象 可选
要获取的单个键、要获取的键列表或指定默认值的字典(请参阅对象说明)。空列表或空对象将返回空结果对象。传入
null以获取存储空间的全部内容。
返回
-
Promise<object>
Chrome 95 及更高版本 browser.*(自 Chrome 148 起)Promise,成功时会解析为包含所请求项的键值对映射的对象,失败时会拒绝。
getBytesInUse()
browser.storage.StorageArea.getBytesInUse(
keys?: string | string[],
): Promise<number>
获取一个或多个内容使用的空间量(以字节为单位)。
参数
-
密钥
字符串 | 字符串 [] 可选
要获取总用量的单个密钥或密钥列表。空列表将返回 0。传入
null可获取所有存储空间的总用量。
返回
-
<number>
Chrome 95 及更高版本 browser.*(自 Chrome 148 起)Promise,在成功时解析为存储空间的使用量,在失败时拒绝。
getKeys()
browser.storage.StorageArea.getKeys(): Promise<string[]>
从存储空间中获取所有密钥。
返回
-
Promise<string[]>
Promise,在成功时解析为存储键,在失败时拒绝。
remove()
browser.storage.StorageArea.remove(
keys: string | string[],
): Promise<void>
从存储空间中移除一个或多个内容。
参数
-
密钥
string | string[]
要移除的内容的单个键或键列表。
返回
-
承诺<void>
Chrome 95 及更高版本 browser.*(自 Chrome 148 起)在成功时解析或在失败时拒绝的 Promise。
set()
browser.storage.StorageArea.set(
items: object,
): Promise<void>
设置多项内容。
参数
-
项目
对象
一个对象,其中包含要用于更新存储空间的每个键值对。存储空间中的任何其他键值对都不会受到影响。
数字等基元值将按预期序列化。具有
typeof"object"和"function"的值通常会序列化为{},但Array(按预期序列化)、Date和Regex(使用其String表示法进行序列化)除外。
返回
-
承诺<void>
Chrome 95 及更高版本 browser.*(自 Chrome 148 起)在成功时解析或在失败时拒绝的 Promise。
setAccessLevel()
browser.storage.StorageArea.setAccessLevel(
accessOptions: object,
): Promise<void>
设置存储区域所需的访问权限级别。默认情况下,session 存储空间仅限于受信任的上下文(扩展程序页面和 Service Worker),而 managed、local 和 sync 存储空间允许从受信任和不受信任的上下文访问。
参数
-
accessOptions
对象
-
accessLevel
仓储区的访问权限级别。
-
返回
-
承诺<void>
在成功时解析或在失败时拒绝的 Promise。
事件
onChanged
browser.storage.StorageArea.onChanged.addListener(
callback: function,
)
当一个或多个内容发生更改时触发。
参数
-
callback
函数
callback参数如下所示:(changes: object) => void
-
更改
对象
-