Но вот если ответ на запрос долго не приходит и отправить новый(ые) запрос(ы), то образуется рад запросов, которые будут менять данные в тот момент, когда придет ответ.
Как можно отменить предыдущий поисковый запрос, если отправляется новый?
Можно конечно запретить отправлять новые запросы, пока не пришёл ответ на старый, но делать так не хочется.
switchMap
А как это правильно записать?
this.search$.pipe( debounceTime(400), distinctUntilChanged(), switchMap((str) => request(str)) ).subscribe( (val: string) => {}) );
Это нужно в onInit прописать? А search$ - это subject? Я почему-то теперь не могу отправить больше одного запроса
search$ - это subject. в него некстишь новые значения.
покажи реализацию
а первый не с ошибкой падает?
С ошибкой
ну подписка умирает значит
Обсуждают сегодня