formData как отобразить в браузере временную картинку?

Мне нужно было отобразить картинку на странице после того, как она выбрана на компе. Но еще не загружена на сервер. Есть ли такая возможность через formData? Я уже делал такое через base64 без formData. Но, хотелось бы узнать есть ли такая возможность не через base64.

let formData = new FormData();
formData.append('photo',e.target.files[0]);
this.MyAvatar=formData;

и дальше типо сделать так:

<img :src="MyAvatar.values()[0].path"

Что-то в этом духе есть ли?


Ответы (1 шт):

Автор решения: Vladimir Gonchar

Вам нужно blob сформировать, чтобы выводить картинку до загрузки. Сделать это можно вот так:

let formData = new FormData();
formData.append('photo', e.target.files[0]);    
this.MyAvatar = URL.createObjectURL(formData.get('photo'))
// А можно и сразу то, что с евента пришло: URL.createObjectURL(e.target.files[0])
→ Ссылка