У меня есть конечная точка (initiate$
), которую я нажал, и она возвращает queueId
, с этим queueId
Я нажимаю на другую конечную точку, пока эта конечная точка не вернет состояние готовности.У меня есть код, который работает, но он постоянно вызывает обе конечные точки.Я знаю, почему он вызывает оба, но я не могу понять, как лучше разделить вызов, чтобы просто попасть во вторую конечную точку (status$
) при последующих вызовах.
RxJs: "^ 6.3.3 "
downloadTransactionList() {
const initiate$ = this.exampleService.startListExport(userId, filter);
const status$ = this.exampleService.pollListExport(initiate$);
const polling$ = timer(0, 10000).pipe(
mergeMap(() => status$),
takeWhile(resp => resp.status !== 'ready')
);
initiate$.pipe(mergeMap(() => polling$)).subscribe(r => console.log(r));
}