Проблема в том, что делая get-запрос данные приходят медленно и они не успевают загрузиться вместе с шаблоном, и переменная имея новое значение не обновляет его в шаблоне. Как мне можно это обновить или загрузить данные?
// компонент
data: any[];
dataGo(): void {
this.service.getData().subscribe(
(data:any[]) => {
this.data = data;
}
);
}
// сервис
getData(): Observable<any[]> {
return this.http.post<any[]>('http://api/' + 'data', { data: 'data'}).pipe(
map((data) => {
return data;
}),
catchError((error) => {
return throwError(error);
})
);
}
В шаблоне data выводиться просто в виде
{{data.name}}
(так же стоит *ngIf="data" перед компонентом шаблона).
То есть нужно обновить значение переменной после получения ответа запроса, но шаблон обновляться не хочет. Как это можно реализовать? Только через Observable и асинхронную передачу в шаблон или можно это провернуть и с обычным объектом?