Jan*_*Jan 0 javascript google-chrome-extension
Chrome 扩展程序需要在其设置中指定的字符串列表。如果安装了扩展程序,我想提供默认字符串,但允许用户根据需要更改字符串列表。如何在 chrome.storage API 中提供这些初始设置?
我的第一个想法是检查列表是否为空。如果是,则用默认值填充。但是,如果用户愿意,可以删除列表中的所有字符串,这将导致列表再次填充默认元素。
您可以为function指定默认值get()。在扩展初始化时,您可以执行以下操作:
chrome.storage.local.get({option: "default"}, function(data){
chrome.storage.local.set(data, /*...*/);
});
Run Code Online (Sandbox Code Playgroud)
如果不存在,这会将值设置为“默认”,如果存在,则保留当前值。
啊哈,我看到了删除密钥的困境。
有两种选择:
避免删除键。将键设置为未定义或空字符串,但保留该键。
使用默认值进行初始化,然后进行设置{settings_schema: 1}。通过这种方式,您可以在初始化时检查选项架构版本,并根据需要执行升级(即添加新选项的默认值)。
| 归档时间: |
|
| 查看次数: |
2303 次 |
| 最近记录: |