本文作者: jsweibo
本文链接: https://jsweibo.github.io/2019/02/11/browser-storage-local/
摘要
本文主要讲述了:
- 作用
- 许可配置
- 容量上限
- 方法
- 事件
正文
作用
在background.scripts
和 ContentScripts 中读写本地缓存
默认情况下,只有在扩展或浏览器被用户卸载的时候,browser.storage.local
缓存的数据才会被销毁。
许可配置
storage
容量上限
- Chrome 限制了5MB的存储空间,如果需要更大的空间,需要申请
unlimitedStorage
许可 - Firefox 目前没有限制存储空间的大小,但如果需要存储大量数据,建议申请
unlimitedStorage
许可
方法
browser.storage.local.set()
注意:只能存储原始类型和数组。
示例:
1 | browser.storage.local |
browser.storage.local.get()
get()
的参数是被查询数据的名称。
示例:
1 | browser.storage.local |
查询多个数据时,以字符串数组的形式传递参数。
示例:
1 | browser.storage.local |
当需要指定默认值时,以对象的形式传递参数。
示例:
1 | browser.storage.local |
当get()
的参数是null
或undefined
时,视作查询缓存中的所有数据。
示例:
1 | browser.storage.local |
browser.storage.local.remove()
删除缓存
示例:
1 | browser.storage.local |
删除多个缓存
示例:
1 | browser.storage.local |
browser.storage.local.clear()
清空缓存
示例:
1 | browser.storage.local |
事件
onChanged
注:
- 当
browser.storage.local
中缓存的数据发生变更时,会触发browser.storage
的changed
事件 - 使用
browser.storage.local.remove()
或browser.storage.local.clear()
清空缓存时,会触发browser.storage
的changed
事件,但不存在newValue
示例:
1 | browser.storage.onChanged.addListener(function (changes, areaName) { |
参考资料
本文作者: jsweibo
本文链接: https://jsweibo.github.io/2019/02/11/browser-storage-local/
本文对你有帮助?请支持我
- 本文链接: https://jsweibo.github.io/2019/02/11/browser-storage-local/
- 版权声明: 除非另有说明,否则本网站上的内容根据署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 进行许可。