У меня проблемы с пониманием Google storage.sync и storage.local.
Я работаю над расширением Google Chrome, которое в настоящее время использует LocalStorage.
Вот фрагмент кода, который отображает данные.
var data = (localStorage.getItem('todoList')) ? JSON.parse(localStorage.getItem('todoList')):{
todo: [],
completed: []
};
и этот фрагмент кода, который обновляет его
function dataObjectUpdated() {
localStorage.setItem('todoList', JSON.stringify(data));
}
Я не понимаю, как метод localStorage (getItem и setItem) можно заменить на вызов функции, которому я должен передать пару ключ-значение.
Пример хранилища синхронизации из API расширения Chrome
chrome.storage.sync.set({key: value}, function() {
console.log('Value is set to ' + value);
});
Извините, я не слишком хорош с JavaScript:)
Вот что я пытался заменить первым фрагментом
var data = (chrome.storage.sync.get(['todoList'])) ? JSON.parse(chrome.storage.sync.get(['todoList'])):{
todo: [],
completed: []
};
Вот что я пытался заменить вторым фрагментом
function dataObjectUpdated() {
chrome.storage.sync.set({'todoList': JSON.stringify(data)});
}
Так что, поработав некоторое время с этим, я считаю, что, поскольку это вызов ASYNC, моя исходная логика из первого фрагмента неприменима (поправьте меня, если я ошибаюсь)
Я не совсем уверен, как реорганизовать первый фрагмент кода для работы с этим API-интерфейсом ASYNC.