如何将价值转换为流?

时间:2019-09-18 14:25:13

标签: dart

我正在学习Dart。这是我的代码:

class MyClass {
  MyClass() {
    stream = Stream<int>.periodic(Duration(seconds: 1), (t) => t + 1).take(3);
    myStreamController.addStream(stream);

    Future.delayed(Duration(seconds: 2), () {
      myStreamController.addStream(42); // but 42 is digit, not stream!
    });

  }
}

工作代码:

class MyClass {
  MyClass() {
    stream = Stream<int>.periodic(Duration(seconds: 1), (t) => t + 1).take(3);
    myStreamController.addStream(stream).then(
      (done) {
      Future.delayed(Duration(seconds: 2), () {
            myStreamController.addStream( Stream.value(42) ); 
          });
      }
    );

  }
}

如何为Stream增加价值?

1 个答案:

答案 0 :(得分:0)

查看Stream.value构造函数:

  

创建一个在完成之前发出单个数据事件的流。

     

此流发出一个值的数据事件,然后完成   完成的事件。

https://api.dart.dev/stable/2.5.0/dart-async/Stream/Stream.value.html