我有一个可能会或可能不会出错的流,我想catchError以便在错误之前返回上一个/最后一个值,以便继续该流而未完成。与此类似:
inputStream$.pipe(catchError(err => inputStream$.previousValue)).subscribe(...)
答案 0 :(得分:1)
可观察到的inputStream$
发出错误后,它就结束了。
catchError
允许将发出错误的可观察变量与另一个可观察变量相结合(catchError
第一个参数的结果)
此处提供了一些示例:https://www.learnrxjs.io/operators/error_handling/catch.html
您正在寻找的可能是retry
,当源发出错误消息时,它会重新订阅可观察到的源(此处为inputSteam$
)。 https://www.learnrxjs.io/operators/error_handling/retry.html