RXJS как сделать зависимые запросы?

Как сделать зависимые запросы?

const streamClickRefresh = fromEvent(refresh, 'click')
    .pipe(
        switchMap( v => ajax.getJSON(gitUrl))
        
    );

У меня имеется запрос помещенный в switchMap, как на основе него сделать еще один запрос?


Ответы (1 шт):

Автор решения: Sergey Glazirin

По сути нужно просто добавить еще один switchMap. Результат выполнения от первого switchMap будет передан дальше в pipe, и на его основе можно сделать второй запрос.

const streamClickRefresh = fromEvent(refresh, 'click')
.pipe(
    // результатом firstRequest будет firstRequestResult, который передается в pipe
    switchMap( data => firstRequest(data)),
    // на основе firstRequestResult делается второй запрос
    switchMap( firstRequestResult => secondRequest(firstRequestResult)),
);
→ Ссылка