У меня есть служба, которая извлекает данные с сервера. Эти данные используются для заполнения страницы. Я хотел бы обновить страницу каждые 5 секунд. Я пробовал с очень простым setInterval()
, но затем все вызовы на сервер один за другим, не дожидаясь завершения предыдущего. Это проблема, когда, например, сервер идет вниз. Теперь я не знаю, какое из них лучшее решение, может быть, с rxjs и наблюдаемыми.Angular2 - Повторите вызов службы
0
A
ответ
0
Вы могли бы сделать что-то простое, как это:
Rx.Observable.interval(5000)
.flatMap(() => this.http.whateverYouCall)
.map(resp => resp.json())
.subscribe((val) => //do something here with the result)
Это сделает новый вызов каждые 5 сек. Если вы действительно хотите создать новый звонок через 5 секунд после предыдущего, сообщите мне, и я обновлю это.
Если вы хотите, следующий звонок, чтобы начать, когда предыдущий закончился вы могли бы сделать это:
let subject$ = new Rx.BehaviorSubject("a");
subject$
.concatMap(() => fakeHttp().concat(Rx.Observable.empty().delay(5000)))
.do(() => subject$.next("a"))
.subscribe((val) => console.log(val));
jsbin: http://jsbin.com/fufuqid/13/edit?js,console Вы увидите, что каждые 7 секунд «Ъ» регистрируется. 2 секунды для издевающегося вызова и 5 секунд до обновления.
Смежные вопросы
- 1. Вызов службы Angular2 в цикле
- 2. Angular2 Повторите пункт в обратном порядке
- 3. Вызов Джерси из Angular2
- 4. Angular2 попутные ошибки из наблюдаемой службы в вызов приложения
- 5. поле вопрос Angular2 Службы
- 6. Angular2: Ожидание инициализации службы
- 7. Angular2 «Выход» обратный вызов
- 8. Два angular2 службы, использующие ту же наблюдаемую
- 9. Вызов службы WCF - активация службы
- 10. WCF Вызов службы из службы
- 11. Повторите обратный вызов на кнопке Удерживайте нажатой
- 12. Объявление службы Angular2 с ES5
- 13. Angular2 - получение TemplateRef внутри службы
- 14. angular2 метод OnClick вызова службы
- 15. Шаблон обновления Angular2 от службы
- 16. Angular2 связывает данные службы с моделью var
- 17. Angular2 и Drupal 7 Аутентификация API службы
- 18. Angular2 несколько компонентов, используя один REST вызов
- 19. Вызов службы wcf из другой службы WCF вызывает вызов
- 20. Angular2 canActivate() вызов async-функции
- 21. Вызов REST api из angular2
- 22. Вызов машинописного getter в angular2
- 23. Вызов вложенных функций компонент angular2
- 24. Angular2 Http Вызов не стреляя
- 25. Вызов службы внутри темы
- 26. JQuery: вызов веб-службы
- 27. Вызов веб-службы
- 28. вызов службы через jquery
- 29. Удаленный вызов службы OSGI
- 30. Вызов службы Foundation Workflow
да пожалуйста .. я хотел бы, чтобы следующий звонок начался только тогда, когда предыдущий закончен – ayasha