SuperKid 2020. 4. 23. 15:32

stream data listening

 

import 'dart:async';

var stream = Stream.fromIterable([1, 2, 3, 4, 5]);

void main() {
final controller1 = new StreamController();
final controller2 = new StreamController();

controller1.addStream(stream);

final doubler =
new StreamTransformer.fromHandlers(handleData: (data, sink) {
sink.add(data * 2);
});

controller1.stream.transform(doubler).pipe(controller2);
controller2.stream.listen((data) => print(data));

}