在chrome.storage中创建一个数组并检索数据

时间:2015-06-29 18:19:26

标签: javascript arrays google-chrome-extension

所以我现在有点d ..我似乎无法在chrome.storage中添加一个数组,并在以后检索它。这是我现在的代码:

function() {
    chrome.storage.sync.get({ObjectName: []}, function (result) {
    var ObjectName = result.ObjectName;
    ObjectName.push({ArrayName: document.getElementById("field")});
    });

现在检索并显示它:

chrome.storage.sync.get({ArrayName: function(value) {
            for(i=0; i<value.length; i++) { 
                document.write(value)
            };

我得到的错误,可能就像语法问题一样简单,相当于:

错误:表单get(object)的调用与定义get(可选字符串或数组或对象键,函数回调)不匹配

1 个答案:

答案 0 :(得分:3)

您必须使用set方法将值设置为chrome.storage

以下是如何操作的示例

使用set

将数组存储到chrome存储
var testArray=["test", "teste", "testes"];

chrome.storage.sync.set({
    list:testArray
}, function() {
    console.log("added to list");
});

通过调用updatemethod

使用get和modify来获取arrayValue
chrome.storage.sync.get({
    list:[]; //put defaultvalues if any
},
function(data) {
   console.log(data.list);
   update(data.list); //storing the storage value in a variable and passing to update function
}
);  

function update(array)
   {
    array.push("testAdd");
    //then call the set to update with modified value
    chrome.storage.sync.set({
        list:array
    }, function() {
        console.log("added to list with new values");
    });
    }