2013-03-30 13 views
6

Czy można przechowywać tablicę w synchronizacji z Chrome i je odzyskać?Chrome Sync Storage do przechowywania i aktualizacji tablicy

var uarray = [abc,def,ghi]; 

Czy można aktualizować przechowywaną tablicę w pamięci?

var tobeadded = jkl; 
uarray.push(tobeadded); 

był to składnia w dokumentacji

chrome.storage.sync.set({'value': theValue}, function() { 
    // Notify that we saved. 
    message('Settings saved'); 
}); 

Moja przedłużenie zakładek, trzeba przechowywać identyfikator zakładki i pobierać je do poszukiwania wewnętrznego i środków opartych na nim. Wymagana jest aktualizacja okresowa aktualizacji identyfikatora w pamięci.

Dzięki!

+0

połączeń chrome.storage.sync.set każdym razem modifiy tablicę i zaktualizować tablicę w chrome.storage.onChanged if niezbędny. Zwróć także uwagę na ograniczenia dławienia. –

+0

aktualizację należy bezpośrednio dodać do pamięci podobnej do wypychania w Jscript, czegokolwiek mogę użyć do dodania wartości do istniejącej macierzy w pamięci?, Nie będę w stanie stworzyć tablicy ze starymi wartościami + Nowa wartość do zapisania. –

Odpowiedz

3

Możesz odczytać istniejące wartości, dołączyć nową wartość i zapisać ponownie.

Następujący przykładowy kod powinien pozwolić na dodanie do istniejącego arraynewArrEntry przechowywanych w chrome.storage.sync

chrome.storage.sync.get(["storagekey"], function(result) { 
     var array = result[storagekey]?result[storagekey]:[]; 

     array.unshift(newArrEntry); 

     var jsonObj = {}; 
     jsonObj[storagekey] = array; 
     chrome.storage.sync.set(jsonObj, function() { 
      console.log("Saved a new array item"); 
     }); 
    });