我有一个输入字段来接受图像
输入框是这样的
<input type="file" id="photo" accept="image/*" required @change="UploadPhoto" />
此输入字段在 vuejs 的模板中。我使用的 vue 版本是 3。
我在上传图片时调用了 UploadPhoto() 方法。
我正在尝试将图像编码为 base64
UploadPhoto() {
const file = document.querySelector('#photo').files[0];
const reader = new FileReader();
reader.addEventListener("load", function () {
this.photo=reader.result;
//On console.log(this.photo) here shows base46 encoded value
}, false);
if (file) {
reader.readAsDataURL(file);
}
console.log('Base 64 of the Upload Photo'+ this.photo);//On console.log(this.photo) here doesnot shows base46 encoded value instead shows as null
}
,
我已将数据中的照片初始化为空白字符串。
在 addEventListner() 函数内的 console.log(this.photo) 上显示 base46 编码值
在 addEventListner() 函数之外的 console.log(this.photo) 上,base46 编码值显示为空白
如何将 addEventListner() 函数中的 baseencode 图像传递到外部范围,即 this.photo
上传照片后,我将 this.photo 设为 null .Base64 的图像,即