javascript - 将新键/值对添加到 chrome.storage.sync 中的现有键

标签 javascript google-chrome google-chrome-extension google-chrome-storage

我是 JSON 和 Chrome 扩展开发的新手。 我有两个 HTML 按钮,即“开始”和“停止”。我有以下 JavaScript 代码:

var storage = chrome.storage.sync;

function setData(key, value) {
    storage.set({ [key]: value });
}

function onClickMarkStartButton() {
    var date = getCurrentDate();
    var start = { 'start': getCurrentTime() };

    setData(date, start);
}

function onClickMarkEndButton() {
    var date = getCurrentDate();
    var end = { 'end': getCurrentTime() };

    setData(date, end);
}

节省

6/1/2018 : {
    "start":"16:34"
}

6/1/2018 : {
    "end":"16:40"
}

覆盖之前保存的键/值对,而不是这样保存

6/1/2018: {
  "start": "16:34",
  "end": "16:40"
}

有什么建议吗?

最佳答案

将您的结束函数更改为:

function onClickMarkEndButton() {
    var date = getCurrentDate();
    chrome.storage.sync.get(date, function (obj) {
        setData(date, {
            start: obj.start,
            end: getCurrentTime()
        });
    });
}

关于javascript - 将新键/值对添加到 chrome.storage.sync 中的现有键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48126770/

相关文章:

javascript - 如果任何字段留空,如何在表单中生成错误消息

javascript - JS SetInterval 提速

javascript - 在 Chrome 扩展程序中创建自定义事件的最惯用方法

google-chrome - chrome.extension.sendMessage() 中的 Chrome 扩展程序内存泄漏?

google-chrome - Chrome 扩展程序 : close background page after closing Chrome

javascript - 是否可以在网页处理之前修改 KeyboardEvent?

javascript - Facebook Graph API - 获取帖子管理员创建者

javascript - 在javascript中检测浏览器窗口

javascript - 如何将弹出窗口位置设置为下方而不是右侧

javascript - 在 Google Chrome 中调试 CSP 违规