Vue将图像转换为base64

hgqdbh6s  于 2023-06-24  发布在  Vue.js
关注(0)|答案(1)|浏览(194)

我想将本Map像转换为base64。reader.readAsDataURL不工作。我总是得到一个未定义的原始变量。文件var的值是我试图上传的文件的元数据。

HTML:

<input
  type="file"
  accept="image/jpeg/*"
  @change="uploadImage()"
/>

JS:

uploadImage() {
  const file = document.querySelector('input[type=file]').files[0]
  const reader = new FileReader()

  const rawImg = reader.readAsDataURL(file)
  console.log(file)
  console.log(rawImg)
}
niwlg2el

niwlg2el1#

如果您直接从readAsDataURL设置图像,它将始终返回undefined。使用onloadend事件:

let rawImg;
const file = document.querySelector('input[type=file]').files[0];
const reader = new FileReader();

reader.onloadend = () => {
   rawImg = reader.result;
   console.log(rawImg);
}
reader.readAsDataURL(file);

相关问题