【问题标题】:Dart stream operator equivalent of RxJS tap相当于 RxJS Tap 的 Dart 流操作符
【发布时间】:2021-02-12 16:44:21
【问题描述】:

我正在 dart 中进行我的第一个流,我想在可观察到的 operators 之后打印我的一些值,然后再将它们发送到 listen,就像 RxJS 中的 tap 一样。这可能吗?我在 RxDart 中也找不到。

例如:

final pulseStream = field.control.valueChanges
    .where((dynamic val) => (val as String).length < 20)
    .tap(print)
    .where((dynamic val) => (val as String).isNotEmpty)
    .tap(print)
    .where((dynamic val) => pulseController != null)
    .tap(print)
    .where((dynamic val) => !pulseController.isAnimating);

【问题讨论】:

    标签: dart rxdart dart-stream


    【解决方案1】:

    doX操作员:

    RxDart                             |  RxJS
    ------------------------
    doOnData(print)                    | tap(console.log) or tap({ next: console.log })
    doOnError((e, s) => print(e))      | tap({ error: console.log })
    doOnDone(() => print('done'))      | tap({ complete: () => console.log('complete') })
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-09-29
      • 2019-06-14
      • 1970-01-01
      • 2015-01-19
      • 1970-01-01
      • 1970-01-01
      • 2012-09-23
      • 1970-01-01
      相关资源
      最近更新 更多