0

我正在使用以下顺序保存一些设置

var getSettings = async function() {

    var settings;
    try {
        settings = await authenticatedGET(server_url + SETTINGS_ENDPOINT);
        return settings;
    } catch (error) {
        console.log("Settings Fetch Failed: " + error);
        throw new Error(error);
    }
}

const setLocalSettings = function(settings) {
    chrome.storage.sync.set({ 'LML_Settings': JSON.parse(settings) }, function() {
        console.log("Settings saved locally");
    });
}

setLocalSettings函数定义之后的行,“设置”对象注销为 {"email_format":"individual","close_tab":true,"frequency":"DAILY"}(按预期正确)。当我使用此序列获取设置时:

chrome.storage.sync.get('LML_Settings', function(LMLSettingsContainer) {
                console.log(LMLSettingsContainer);
                if (LMLSettingsContainer.LML_settings.close_tab == "true") {
                    closeCurrentTab();
                }
            })

LMLSettingsContainer注销为

{
  "LML_Settings": {
    "close_tab": true,
    "email_format": "individual",
    "frequency": "DAILY"
  }
}

访问我的设置LMLSettingsContainer.LML_Settings["<setting>"]有点烦人(这也是我将顶部变量命名为 LMLSettingsContainer 的全部原因)。

有谁知道是否有办法让 chrome 保存/解开这些值?

4

1 回答 1

0

chrome.storage.sync.get('LML_Settings', ({LML_settings}) => { ... }) 工作,每 @wOxxOm

于 2017-12-09T04:22:52.723 回答