readAsBinaryString中的readAsDataURL?

时间:2010-12-09 16:47:01

标签: javascript local-storage file-manager

我想将图像作为二进制文件保存到用户localhost以供将来参考,然后在以后的日期,从这个二进制文件生成dataurl,问题是,它不起作用。

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

这可能看起来有点不正常,但是图像数据被放在本地存储中,然后在以后的日期(可能是一分钟,也许一周)我希望能够从中生成图像。

有什么想法吗?谢谢!

1 个答案:

答案 0 :(得分:2)

将它作为数据URL读取可能最简单,并将其保存到localStorage中。但是,如果您真的需要二进制数据,那么您可以单独保存它们。然后,当您需要生成图像时,只需执行以下操作:

var img = document.createElement("img");
img.setAttribute("src", localStorage.imageDataURL);
document.body.appendChild(img);