В моем фрагменте я делаю запрос api, и все работает нормально. Теперь я хочу проверить ответ, чтобы узнать, больше ли количество доступных на сервере элементов, чем возвращаемый результирующий набор, заданный в таблице. Если это так, я хотел бы сделать дополнительные вызовы api, пока все результаты не будут получены и возвращены подписчику в качестве одного ответа. Какой оператор RX мне нужно использовать для достижения этого и как приостановить возврат ответа ниже до тех пор, пока последующие вызовы api не будут завершены?RX слияние нескольких наблюдаемых
getAction<T>(path: string, params?: {}): Observable<T> {
return this._http.get("url")
.map(res => {
let response = res.json();
// If more pages available make additional api calls & return as single result
return response;
});
}
Так как это линейный поток, который завершается после 1 эмиссии, 'switchMap',' flatMap' или 'concatMap' должен работать одинаково в вашем случае - когда возникают сомнения, когда цепочка нескольких потоков использует' switchMap', это работает для большинство случаев – olsn