Javascript-форум (https://javascript.ru/forum/)
-   Angular.js (https://javascript.ru/forum/angular/)
-   -   Показать картинку из массива (https://javascript.ru/forum/angular/76949-pokazat-kartinku-iz-massiva.html)

kotelok 04.03.2019 14:25

Показать картинку из массива
 
Подскажите, как загрузить картинку на страницу из кода?

В 'ngOnInit' идёт обращение к API, который, помимо прочего, возвращает картинку в base64.

Как эту картинку вывести в тэг <img> на странице?

На странице:
<img [src]="accountForm.controls.captchaImage" width="100" height="50">
В ts-коде:
this.accountForm.controls["captchaImage"].setValue("data:image/jpeg;base64," + captcha.picture);


Но при этом браузер всё равно пытается делать GET-запрос для получения картинки напрямую с сервера.

P.S.: картинка точно корректная, т.е. все он-лайн сервисы её корректно из base64 разбирают и показывают в виде картинки.

kotelok 04.03.2019 15:02

Всё, разобрался. Почему-то 'src' не биндится на контролы реактивной формы. А если просто в классе компонента разместить паблик-свойство и в него картинку записать, то всё корректно отображается.
<img [src]="captchaImg" width="100" height="50">

d.skuratovich 27.03.2019 17:12

Так ты биндишь контрол, а не его значение, поэтому и не работает


Часовой пояс GMT +3, время: 12:44.