@SpaceBox777

Как исправить проблему с отображением обновленного значения переменной в шаблоне?

Проблема в том, что делая 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 и асинхронную передачу в шаблон или можно это провернуть и с обычным объектом?
  • Вопрос задан
  • 35 просмотров
Пригласить эксперта
Ответы на вопрос 1
Geminix
@Geminix
Фуллстек nuxt, .net разработчик
Попробуйте вместо any тип указать хотя бы такой
{
    name: string
}
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы