2013-03-30 4 views
6

ist es möglich, array in chrome storage sync zu speichern und sie abzurufen?chrome sync storage zum speichern und aktualisieren array

var uarray = [abc,def,ghi]; 

Ist es möglich, das gespeicherte Array im Speicher zu aktualisieren?

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

dies die Syntax in der Dokumentation war

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

Meine Lesezeichen Erweiterung, müssen die ID-Lesezeichen speichern und sie für die interne Suche und stopft darauf basierenden abrufen. Lesezeichen erfordern eine Aktualisierung der ID bei der Speichersynchronisierung in regelmäßigen Abständen.

Danke !!

+0

Anruf chrome.storage.sync.set das Array in chrome.storage.onChanged jedes Mal, wenn das Array modifizieren gespeichert hinzuzufügen und aktualisieren, wenn notwendig. Beachten Sie auch Drosselungsgrenzen. –

+0

Update sollte direkt zum Speicher ähnlich wie Push in Jscript hinzugefügt werden, alles, was ich verwenden kann, um Wert zu bestehenden Array im Speicher hinzufügen?, Ich kann nicht Array mit alten Werten erstellen + Neuer Wert gespeichert werden. –

Antwort

3

Sie können die vorhandenen Werte lesen, den neuen Wert anhängen und zurückspeichern.

folgende Beispielcode sollte Ihnen ermöglichen, newArrEntry in bestehende array in 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"); 
     }); 
    });