如何在vue中将图像从文件输入转换为base64 url?
How to convert image from file input to base64 url in vue?
我试图从 vue 中的文件输入转换图像,但我不太确定我是否以正确的方式完成了它。
我想要实现的是获取图像 url,将其分配给数据变量并将其推送到我的 mongoose DB
这是我根据阅读的指南尝试的方法:
输入:
<div class="singleInput50">
<span>Personal Image:</span>
<input type="file" @change="handleImage" accept="image/*">
</div>
处理图片:
handleImage(e) {
const selectedImage = e.target.files[0];
this.createBase64Image(selectedImage);
},
createBase64Image:
createBase64Image(fileObject) {
const reader = new FileReader();
reader.onload = (e) => {
this.userObject.imgPersonal = e.target.result;
};
reader.readAsBinaryString(fileObject)
console.log("file object", fileObject);
}
Img个人函数执行后的值:
imgPersonal:"ÿØÿàJFIFÿÛC\n \n \n$ &%# #"(-90(*6+"#2D26;=@@@&0FKE>J9?@=ÿÛC =)#)==================================================ÿÀ"ÿÄ \nÿĵ}!1AQa"q2¡#B±ÁRÑðbr \n%&'()*456789:CDEFGH
我也试过 readAsDataURL(),结果好像一样
有什么建议吗?
我正在使用此函数将文件转换为 base64。适合我:
export default function (blob) {
return new Promise((resolve, reject) => {
const reader = new FileReader()
reader.onerror = reject
reader.onload = () => {
resolve(reader.result)
}
reader.readAsDataURL(blob)
})
}
我试图从 vue 中的文件输入转换图像,但我不太确定我是否以正确的方式完成了它。 我想要实现的是获取图像 url,将其分配给数据变量并将其推送到我的 mongoose DB
这是我根据阅读的指南尝试的方法:
输入:
<div class="singleInput50">
<span>Personal Image:</span>
<input type="file" @change="handleImage" accept="image/*">
</div>
处理图片:
handleImage(e) {
const selectedImage = e.target.files[0];
this.createBase64Image(selectedImage);
},
createBase64Image:
createBase64Image(fileObject) {
const reader = new FileReader();
reader.onload = (e) => {
this.userObject.imgPersonal = e.target.result;
};
reader.readAsBinaryString(fileObject)
console.log("file object", fileObject);
}
Img个人函数执行后的值:
imgPersonal:"ÿØÿàJFIFÿÛC\n \n \n$ &%# #"(-90(*6+"#2D26;=@@@&0FKE>J9?@=ÿÛC =)#)==================================================ÿÀ"ÿÄ \nÿĵ}!1AQa"q2¡#B±ÁRÑðbr \n%&'()*456789:CDEFGH
我也试过 readAsDataURL(),结果好像一样
有什么建议吗?
我正在使用此函数将文件转换为 base64。适合我:
export default function (blob) {
return new Promise((resolve, reject) => {
const reader = new FileReader()
reader.onerror = reject
reader.onload = () => {
resolve(reader.result)
}
reader.readAsDataURL(blob)
})
}