this.http.get(`/payments`).pipe(
mergeMap((payments) => of(payments)),
);
Для каждого испускаемого значения оператор mergeMap () создает новую наблюдаемую с этим значением, а затем оператор подписывается на эту новую наблюдаемую. Каждое значение, испускаемое этой наблюдаемой, пересылается подписчику до тех пор, пока не завершится внутренняя наблюдаемая.
Это повторяется для каждого испускаемого значения из наблюдаемой источника.
Здесь нет задержки или многоадресной передачи. поскольку of(payments)
будет выдавать значение в том же стеке вызовов JavaScript.
Вы можете заменить mergeMap на switchMap () , и это также не будет иметь никакого эффекта.
Исходный код является наиболее вероятным остатками чьей-либо попытки отладки или изменения выданных значений, и поскольку http.get()
выдает одно значение, не имеет значения, использовали ли вы в этом случае mergeMap или switchMap. Большинство людей, которые используют эти операторы с HTTP-вызовом, должны связываться с другим HTTP-вызовом.
Если вам нужно соединиться с другими HTTP-вызовами, взгляните на мой switchChain () оператор, который включен в мою библиотеку наблюдаемых.
https://github.com/reactgular/observables