У меня есть приложение Ionic 3 , в которое я загружаю изображение с сервера API . В на стороне клиента я хочу знать, успешно ли загружено или загружено изображение, а также узнать, есть ли какие-либо ошибки при получении.
Вот пример, который я создал, используя чистый html с угловым шаблоном без js .
<img hidden [src]="driverInfo?.user_avatar?.url | image:'original'" (load)="this.loadingImage = false">
<img [src]="driverInfo?.user_avatar?.url | image:'original'" *ngIf="!loadingImage" onError="this.src='assets/imgs/avatar-placeholder.png';" />
Когда я использую только вторую строку кода ниже и переношу событие (загрузка) туда. Сначала отображается путь onError
, но это не потому, что изображение все еще загружается. Я хочу показать спиннер или загрузчик при загрузке изображения. Затем, когда изображение загружено, покажите исходный путь , если оно успешно , если не показано, путь в onError .
Так что я знаю, что этот код совсем не хорош. Вот почему я пытаюсь решить здесь. Я только что создал обходной код, который достигает моей цели, но не в хорошей практике.
Итак, в первой строке кода. Я отобразил скрытый HTML-файл . Назначение этого кода - запуск только в том случае, если изображение загружено, а во второй строке отображается фактическое изображение, если оно получено успешно, или отображается какая-либо ошибка или заполнитель изображения, если нет.
Так как я могу реорганизовать это, используя Angular JS ? Буду ли я использовать ViewChild с ElementRef для достижения этой цели?
Цените, если кто-то может помочь. Заранее спасибо.