2

我的应用程序正在使用 (BLOC) RxDart 和 Streams 来传递信息并动态构建小部件。

但是,如果它将一个简单的 PODO(普通旧 dart 对象)传递到流中,我将无法使用 StreamBuilder 小部件解析它。

我可以将它输出到字符串并打印“对象实例”,但是如果我似乎无法深入了解对象详细信息。

添加到流控制器

final _streamController = BehaviorSubject<Object>();
Function(Object) get addObjectToStream => _streamController.sink.add;

使用验证器添加到流

  final addToStream = StreamTransformer<Object, Object>.fromHandlers(
    handleData: (device, sink) {
      sink.add(device);
    }
  );

消费流

StreamBuilder(
              stream: bloc.stream,
              builder: (context, snapshot) {
                if (snapshot.hasData) { 
                  return Text('${snapshot.data.toString()}'); //This works 'instance of Object'
                } else {
                  return Text('No data to be displayed');
                }

              }),

任何建议或帮助将不胜感激。

4

0 回答 0