rxjs - RxJS catchError 并返回先前的值而不是完成?
问题描述
我有一个可能会或可能不会出错的流,我想 catchError 以便返回错误之前的上一个/最后一个值,以便继续流而不完成。类似这样的东西:
inputStream$.pipe(catchError(err => inputStream$.previousValue)).subscribe(...)
解决方案
一旦你的 observableinputStream$
发出错误,它就完成了。
catchError
允许将一个发出错误的可观察对象与另一个可观察对象(第一个参数的结果catchError
)连接起来。这里提供了一些示例:https ://www.learnrxjs.io/operators/error_handling/catch.html
您正在寻找的可能是当源发出错误时retry
重新订阅源 observable(此处)。https://www.learnrxjs.io/operators/error_handling/retry.htmlinputSteam$
推荐阅读
- python - JSON数据通过python转换为字符串数据
- excel - 我们可以根据单张excel的数据范围更改页眉吗?
- php - Woocommerce 删除按钮删除错误的产品
- css - 如何裁剪不适合的网格块内的文本
- python-3.x - 如何从对话框中获取输入回到treeview pyqt5 python 3
- sql - SQL Server - 将未知数量的行值更改为列名
- c++ - UpdateLayeredWindow() 和 OpenGL 上下文
- python - 如何将 request.user 导入 djnago 中的 TemplateVew
- sql - 将 INSEET 添加到 SELECT QUERY 以查找缺失值
- flutter - 在 Flutter 中加载特定 URL 时关闭 Webview