我曾尝试从 vue 中的文件输入转换图像,但我不太确定我是否以正确的方式进行了转换。我想要实现的是获取图像 url,将其分配给数据变量并将其推送到我的猫鼬数据库中
这就是我根据我阅读的指南尝试过的:
输入:
<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);
},
创建Base64Image:
createBase64Image(fileObject) {
const reader = new FileReader();
reader.onload = (e) => {
this.userObject.imgPersonal = e.target.result;
};
reader.readAsBinaryString(fileObject)
console.log("file object", fileObject);
}
函数执行后的 ImgPersonal 值:
imgPersonal:"ÿØÿàJFIFÿÛC\n \n \n$ &%# #"(-90(*6+"#2D26;=@@@&0FKE>J9?@=ÿÛC =)#)==================================================ÿÀ"ÿÄ \nÿĵ}!1AQa"q2¡#B±ÁRÑð$3br \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)
})
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句