我可以从地图功能中引发错误,还是需要使用flatMap?应该将错误报告给onError。在RxJava中,我可以简单地抛出异常。 如何执行以下(伪)代码
observable.map( value -> {if (value.isIllegal) raiseError else return value.count})
显然可以使用flatMap,但我正在寻找地图解决方案。
答案 0 :(得分:10)
在RxSwift中以相同的方式工作 -
enum MyError: Error {
case myError
}
Observable
.from([1,2,3])
.map { (element) -> Int in
throw MyError.myError
}
.subscribe { event in
os_log("%@", "\(event)")
}
.disposed(by: self.disposeBag)