Есть 2 запроса на бэкенд. Для выполнения второго запроса нужен результат выполнения первого запроса.
После выполнения обоих запросов нужно выполнить функцию, в которую нужно передать опять таки результаты выполнения первого запроса.
Сейчас это выглядит примерно так:
this.profileDocumentService.getDataOne(profileId, identityTranslationCreateContract).pipe(
tap((someDataFromOne) => {
if (someDataFromOne.document) {
this.documentApiAdapter.getDataTwo(translationResponse.id as number, someDataFromOne.document).subscribe();
}
}),
map((someDataFromOne) => this.mapIdentityTranslationDocument([someDataFromOne]))
но это неправильно, потому что внутри Observable нельзя/очень_плохо делать подписку на другой Observable.
Как сделать подобный запрос правильно, без подписок внутри подписки и чтобы в callback'е внутри map можно было взять результаты первого запроса?