我有一个Chrome扩展程序,可将用户配置存储在chrome.storage.sync中。对于新用户,我想提供一个默认配置,因此我将chrome.storage.sync.get使用默认值,如下面的代码所示。
不幸的是,它似乎没有设置任何东西,因为当我稍后对其进行检查时,没有任何存储空间。我在做什么错了?
chrome.runtime.onInstalled.addListener(function () {
console.log("oninstalled called");
const defaultConfig = {
hideFirms: true,
searchRegular: true,
feedbackRange: [0, 100],
blacklist: [],
};
// only provide default values if there is no config already in the storage...
chrome.storage.sync.get({ "config": defaultConfig}, response => {
console.log("response from getting/setting: ", response);
chrome.storage.sync.get("config", r => {
console.log("while respin pure getter is: ", r);
});
chrome.storage.sync.get(null, r => {
console.log("and whole storage contents are: ", r);
});
});
});
如您所见,第一个console.log显示defaultConfig,其他两个调用返回一个空对象。