Angular 6 получает одни и те же данные api для каждого вызова сервера, пока я не обновлю приложение

Создаю дашборд для скайп-бота. Я запрашиваю данные каждые 10 секунд. Проблема в том, что я получаю те же данные из API. Но когда я обновляю приложение, я получаю данные обновления из API.

Я использую функцию setInterval для запроса данных с сервера каждые 10 секунд. Я также пробовал с помощью таймера rxjs6 Observable и оператора concatmap, но результат такой же, как и раньше.

setInterval(() => {
    this.initTopBlockData();
    this.getGraphData(this.calenderStart, this.calenderEnd, () => { });
  }, 10000);

Я использую указанную выше функцию и использую ее на хуке жизненного цикла ngOninit

public ngOnInit(): void {
this.initTopBlockData();
this.loadGraphData(this.calenderStart, this.calenderEnd);
setInterval(() => {
  this.initTopBlockData();
  this.getGraphData(this.calenderStart, this.calenderEnd, () => { });
}, 10000);}

Выше я вызываю API.

какую ценность вы получаете от this.calenderStart и this.calenderEnd?

Just code 26.10.2018 06:15
this.initTopBlockData() - это основной метод, вызывающий все методы, отвечающие за получение данных с сервера. Я вызываю этот метод на ngOnint и в функции setInterVal()
Vijay 26.10.2018 06:37

Привет, vijay! Похоже, вы отправляете одно и то же значение 'calenderStart' и 'calenderEnd' в каждом вызове. Он обновляется? Пожалуйста, поделитесь своим кодом для лучшего понимания.

Chintan Joshi 26.10.2018 09:58

@Chintan Joshi Я звоню в то же свидание. Я исправил это спасибо за помощь

Vijay 26.10.2018 10:20

Рад помочь, удачного кодирования :)

Chintan Joshi 26.10.2018 12:29
0
5
131
2

Ответы 2

Для каждого вызова API дата, которую я отправляю, не обновляется. Я убеждаюсь, что дата обновлена, и я получаю обновленные данные.

Вам необходимо обновлять переданные значения this.CalenderStart и завершать каждый раз, когда вы повторно вводите данные.

Другие вопросы по теме