Domanda

Voglio salvare un'immagine come binario agli utenti localhost per riferimento futuro, poi in un secondo momento, generare un DataURL da questo binario, problema è, non funziona.

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);

Questo potrebbe sembrare un po 'peverse, ma i dati dell'immagine viene messo in localStorage, poi in un secondo momento (forse un minuto, forse una settimana) Voglio essere in grado di generare un'immagine da esso.

Tutte le idee? Grazie!

È stato utile?

Soluzione

Probabilmente sarebbe più facile da leggere proprio come un URL di dati, e salvare quella in localStorage. Tuttavia, se si ha realmente bisogno dei dati binari, allora si potrebbe semplicemente salvare separatamente. Poi, quando si ha bisogno per generare l'immagine, basta fare qualcosa di simile:

var img = document.createElement("img");
img.setAttribute("src", localStorage.imageDataURL);
document.body.appendChild(img);
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top