Angular NGX аватар изображения SR c привязка свойства - PullRequest
0 голосов
/ 28 апреля 2020

В приложении angular я получаю изображения аватаров с сервера и сохраняю их на карте, соответствующей некоторому идентификатору. Я использую ngx-avatar для отображения этих изображений аватара.

У меня есть компонент Users и служба аватаров, содержащая карту, а компонент Users получает аватары от службы Avatar.

Теперь служба аватаров может обновить записи на карте, поэтому я хочу обновить аватары, отображаемые в компоненте «Пользователи».

Users Component:

<div> <!-- this is list item with an 'obj' --->
    <ngx-avatar
        mat-list-avatar
        [src]="obj.avatar"
        name="{{ obj.name }}"
        initialsSize="2"
        size="30"
    ></ngx-avatar>
    {{ getAvatar(obj) }}  <!-- I have to do this to keep checking whether the avatar is updated -->
</div>

getAvatar(obj) {
    let avatar = this.avatarsService.getAvatarFromMap(obj.id);
    obj.avatar = avatar;
}

Avatars Service:

private idAvatarMap = new Map<string, string>();

getAvatarFromMap(id: string) {
    return this.idAvatarMap.get(id);
}

В коде ngx-avatar я не могу выполнить src="{{ getAvatar(obj) }}", поскольку получаю unsafe url ошибки. Итак, я делаю этот хак {{ getAvatar(obj) }} после окончания работы ngx-аватара.

Как правильно обновить аватар в этом случае?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...