Задать вопрос
@zlodiak

Как получать данные периодически?

Я в angular6-проекте пытаюсь получать данные через каждые 5 секунд. Написал сервис, но он не срабатывает.

JSFIDDLE

Помогите пожалуйста исправить код:
getExample(): Observable<any> {
    console.log('getExample');
    return Observable
      .timer(0, 5000)
      .flatMap(() => this.httpClient.get('https://jsonplaceholder.typicode.com/posts'))
      .map((r) => {
        return r;
      });
  }


При этом срабатывает более простой сервис - в котором нет интервала: JSFIDDLE
  • Вопрос задан
  • 196 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию
    6 месяцев
    Далее
Решения вопроса 1
В RxJS 6 версии добавился оператор pipe, в котором следует изменять поток
import { Observable, timer } from 'rxjs';
import { flatMap } from 'rxjs/operators';

getExample(): Observable<any> {
    console.log('getExample');
    return timer(0, 5000).pipe(
        flatMap(() => this.httpClient.get('https://jsonplaceholder.typicode.com/posts'))
      )
  }
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы