zestaw do przechowywania chromu
Chcę zapisać informacje w moim rozszerzeniu. używamChrome.storage.sync
aby to zrobić, jednak gdy czytam zaraz po zapisaniu, nie jestem w stanie poprawnie pobrać wartości. Prawdopodobnie robię coś głupiego ... Próbowałem wyczyścić pamięć lokalną za pomocąchrome.storage.sync.clear
ale to nie pomogło.
Moja funkcja składowania to (patrz jakW tej chwili zrobił to):
save: function (type, key, data) {
Storage.storageOption(type).set({key:data}, function () {
console.log("saved data");
});
load: function (type, key) {
Storage.storageOption(type).get(key, function (object) {
console.log("read : " +object);
return object[key];
})}
i nazywając to:
Storage.save("", 'path',username);
console.log(Storage.load("",'path'));
W wyniku tego:
zapisane dane
niezdefiniowany
czytaj: [obiekt obiektu]
Aktualizacja:OK, najwyraźniej istnieje problem z przekazywaniem pary klucz-wartość obiektu, ponieważ kiedy to nazywam:chrome.storage.sync.set({'path':username}, function(){});
Drukowanie pamięci w konsoli daje lepsze wyniki:
niezdefiniowany
shai
Nadal nie wiem, co to jest niezdefiniowane ...
Aktualizacja 2:Po pomyślnym zapisaniu do magazynu, próbując go odczytać, gdy uruchomiony jest gotowy dokument. Używając następującego kodu:
var dbdata = chrome.storage.sync.get("path",function(object){
return object['path'];
});
Jednak ciało funkcji nie jest wykonywane, chociaż dokumentacja mówi, że będzie uruchamiana w każdym przypadku i ustawi lastError w przypadku błędu.
Jakieś sugestie?