私は現在、chrome.storageメモリにいくつかの画像を保存する必要があるChrome拡張機能を書いています。私は現在のオブジェクトの配列を作っています:シンプルなAPPENDと画像をchrome.storageエクステンションに入れる
var AnImage = new Image()
AnImage.src = http://image.image/imageurl.png
var ObjectToSave = { ...,
graph_img : AnImage,
... }
...
AnArray[x] = ObjectToSave
I出力を
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を使用しています
これを行う方法はありますか?画像の保存にはほとんど助けがなく、古いものは古いもので、古いストレージAPIの場合はbase64でエンコードすることについて話し合っています。しかし、私は私の最初の研究を行なったときにbase64エンコードを主張する人がいたマルク・GuiselinとwOxxOmはコメントで述べたように、もはや
代わりにURLを保存してください。 'chrome.storage.sync.get'あなたのイメージオブジェクトは、オブジェクトタイプの使用不可能なオブジェクトを返します。 –
ドキュメントごとに、chrome.storageはJSONのシリアライズ可能なものだけです。イメージはもちろんではありません。 – wOxxOm