Я нахожусь в преобразователе угловых маршрутов и хочу вернуть наблюдаемое.
Мне нужно подписаться на несколько асинхронных процессов в следующем порядке:
A => B (a) =>C (b)
C зависит от B, а B зависит от A. A должен завершиться, затем B, затем C, но я хочу, чтобы значение C использовалось только для разрешения маршрута.
Я пробовал два разных подхода:
return A.pipe(
concatMap(a =>
B(a).pipe(
concatMap(b =>
C(b).pipe((c) => c); // also tried of(c)
)
)
)
);
Я также пробовал
return A.pipe(
concatMap(a => {
return B(a).pipe(map(b => {a: a, b: b});
),
concatMap({a, b} => {
return C(b);
)
);
Как мне подписаться на A, затем B, затем C ... , а затем получить значение только из самой внутренней наблюдаемой?
Если я поставлю метку после моего последнего concatMap, я получу ожидаемое возвращаемое значение. Но мой распознаватель никогда не разрешает? (или испускается неправильная вещь? Я не могу точно сказать.)