Мне нужно решение, чтобы вернуть одно обещание от 3-х различных вызовов API. В настоящее время выполняется 3 различных вызова API с помощью rxjs epics и ожидает возврата одного объекта обещания после завершения всех 3 вызовов. Возникают проблемы с пониманием того, как использовать Promise.all () и где его вызывать. Я думаю, что что-то похожее на Promise.all () является forkJoin (). У меня есть несколько фиктивных данных для примера моего эпоса, который я использую ниже. Это все происходит в React. Может ли кто-нибудь предоставить подробный пример того, как использовать Promise.all () или forkJoin с эпопеями в React, пожалуйста?
Спасибо
action$.ofType(GET_PROMISE).mergeMap(
action =>
action.payload.search_location === undefined ||
action.payload.search_location.length === 0 ||
action.payload.search_location === "" ||
stateRegex.test(action.payload.search_location.toLowerCase()) === true
? api
.fetchPromise(action.payload)
.map(
payload =>
payload.value === undefined || payload.value.length === 0
? getPromiseFail()
: getPromiseSuccess(payload)
)
В тот момент, когда я возвращаю объект обещания, я обновляю состояние и объединяю эти данные с двумя другими обещаниями из двух разных вызовов API. Поскольку они асинхронны, они возвращаются в разное время. Поэтому я хотел бы объединить все 3 вызова перед отображением любых данных в веб-приложении.