带延迟用法的switchIfEmpty示例

时间:2019-07-12 18:58:11

标签: flutter

我正在学习ReactiveX,我有一些示例代码结合使用了switchIfEmpty和defer运算符。但是执行结果是意外的。

    Observable<bool>.defer(() => Observable<bool>.just(true))
        .switchIfEmpty(Observable<bool>.defer(() {
      print("here defer");
      return Stream.fromFuture(Future<bool>(() {
        print("here future");
        return true;
      }));
    })).listen((data) => print("here " + data.toString()));

此代码应返回输出“ Here true”,但我收到输出

here defer
here true
here future

0 个答案:

没有答案