В настоящее время я работаю над функцией для приложения Angular с использованием NGRX, в котором отправляется действие для получения некоторых данных с использованием Id; затем, используя объект ответа из первого вызова службы, выполняется второй запрос, чтобы получить дополнительные сведения из другой конечной точки. После того, как все будет сделано, данные / действия могут продолжаться. быть неполным.
Я видел несколько примеров с использованием forkJoin, но не уверен, применимо ли это, поскольку они не параллельные вызовы, а упорядоченные.
Код выглядит примерно так:
this.actions$.pipe(
ofType(fetchAllData),
switchMap(action => {
const one = this.api.getById(serviceUrl, action.Id);
return one.pipe(
switchMap((data) => {
cons two = this.api.getMoreDetail(serviceUrl, two.id)
return fetchDataActions(data, []);
})
);
})
)
);
Таким образом, в идеале данные должны содержать все, что мне нужно, и быть готовым для заполнения моего компонента.
Примечания: - приведенный выше код не работает - вызовы должны происходить по порядку, поскольку ответ от вызова №1 будет использоваться как параметр для вызова № 2 - выполнение упорядоченных отправленных действий не работает, так как данные компонента являются неполными при визуализации.