什么是 StorageLocal
StorageLocal 是对 chrome.storage.local
中 set
和 get
方法的封装使其提供以下功能
- typescript 的支持
- 便捷的数据操作
- 自动填充缺失字段
- 内置锁,避免数据竞争
为什么需要它
无论简单还是复杂的扩展,一旦涉及到 storage.local
的调用,如果没有 typescript 支持,难免的因着时间的流逝,维护成本也会逐步的增加(特别是非原作者维护时),让存储的数据支持 typesafe
这是必然的结果。
同时它还支持自动根据 schema 文件补齐缺失字段,这样每次修改数据库的字段,再也不用担心版本兼容问题
效果
读取数据后,自动推导出类型
如果对象上没有这个值时,马上就有提示
赋值错误时马上就有提示