Frage

Ich mag ein Bild als binäres die Benutzer für die Zukunft localhost speichern, dann zu einem späteren Zeitpunkt, erzeugen eine DataURL aus diesem binären, Problem ist, es funktioniert nicht.

var reader = new FileReader();
reader.onload = function(file){
 this.file = file.target.result;
}.bind(this);
reader.readAsBinaryString(asset);

var reader = new FileReader();
reader.onload = function(image){
 this.image = image.target.result;
}.bind(this);
reader.readAsDataURL(this.file);

Dies könnte ein wenig peverse erscheinen, aber die Bilddaten in localstorage gesetzt wird, dann zu einem späteren Zeitpunkt (vielleicht eine Minute, vielleicht eine Woche) Ich möchte daraus ein Bild erzeugen können.

Irgendwelche Ideen? Dank!

War es hilfreich?

Lösung

Es wäre wahrscheinlich am einfachsten, nur um es als Daten URL zu lesen und speichern, dass in localstorage. Wenn Sie wirklich brauchen jedoch die binären Daten, dann könnte man nur speichern diese getrennt. Dann, wenn Sie das Bild erzeugen müssen, tun nur so etwas wie:

var img = document.createElement("img");
img.setAttribute("src", localStorage.imageDataURL);
document.body.appendChild(img);
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top