如何有条件地向 RxDart 中的 Observable 添加错误?

How to conditionally add an error to an Observable in RxDart?

使用 Dart StreamTransformer,我可以评估流值并选择根据某些条件(例如 sink.add(value))发出它,或添加错误(例如 sink.addError('Enter a valid number'))。

我如何最好地使用 RxDart 的流畅运算符来做到这一点?我可以使用 .map 来评估价值并使用 addError('message') 来反对主题。但是,有没有更好的方法呢?

Stream.map 将在流中将抛出的异常作为错误事件转发。

var result = values.map(
  (value) => someCondition(value) ? value : throw 'Enter a valid number ');