В настоящее время я пишу расширение Chrome, которое должно сохранять некоторые изображения в памяти chrome.storage. Я в настоящее время делаю массив объектов:Добавление изображения в расширение chrome.storage
var AnImage = new Image()
AnImage.src = http://image.image/imageurl.png
var ObjectToSave = { ...,
graph_img : AnImage,
... }
...
AnArray[x] = ObjectToSave
выхода I с простым Append
document.getElementById("AnElement").appendChild(ObjectToSave.graph_img)
Но когда я загрузить его из хранилища и попытаться добавить его снова, он возвращает ошибку
Error in response to storage.get: TypeError: Failed to execute 'appendChild' on 'Node': parameter 1 is not of type 'Node'.
Когда я вывожу его через console.log(), он оценивает то, что было восстановлено как объект, но не все, что я могу распознать. Я в настоящее время использую chrome.storage.sync
Есть ли способ сделать это? Кажется, что небольшая помощь в способе хранения изображений, а также о том, что существует, является старым и говорит о кодировании с base64 для более старого API хранения. Но когда я сделал свое первоначальное исследование не были люди, утверждающие, что base64 кодирование уже не было необходимости
просто сохраните URL. 'chrome.storage.sync.get' для вашего объекта изображения возвратит непригодный объект объекта типа. –
Согласно документации, chrome.storage предназначен только для JSON-сериализуемых материалов. Образ не, конечно. – wOxxOm