У меня есть вызов get, который возвращает список пользователей, который содержит идентификатор пользователя и имя.После успешного вызова мне нужно вызвать еще одного отдыха для каждого пользователя, чтобы принести его фотографию.
В настоящее время я делаю это следующим образом -
component-
users;
userPhotos = {};
constructor(private dashboardService: DashboardService) {
this.dashboardService.bringUsers().subscribe((data) =>{
this.users = data;
this.users.forEach((user) => {
this.dashboardService.getPicture(user.userID).subscribe((data) => {
if (data){
this.userPhotos[user.userID] = window.URL.createObjectURL(data);
} else {
this.userPhotos[user.userID] = '';
}
});
});
});
}
В моем html-
<ng-container *ngFor="let user of users">
<div>
{{user.displayName}}
</div>
<display-picture [image]="userPhotos[user.userID]"></display-picture>
</ng-container>
Где display-picture - это компонент, который просто представляет изображение.
Есть ли эффективный способ использовать rxjs для этого?