Dart 如何从Streambuilder快照解析对象
我的应用程序使用(BLOC)RxDart和Streams来传递信息并动态构建小部件 但是,如果它将一个简单的PODO(普通的旧dart对象)传递到流中,我就无法使用StreamBuilder小部件解析它 我可以将其输出到字符串,然后打印“对象实例”,但是如果我似乎无法深入了解对象细节的话 添加到流控制器Dart 如何从Streambuilder快照解析对象,dart,flutter,reactive-programming,rxdart,Dart,Flutter,Reactive Programming,Rxdart,我的应用程序使用(BLOC)RxDart和Streams来传递信息并动态构建小部件 但是,如果它将一个简单的PODO(普通的旧dart对象)传递到流中,我就无法使用StreamBuilder小部件解析它 我可以将其输出到字符串,然后打印“对象实例”,但是如果我似乎无法深入了解对象细节的话 添加到流控制器 final _streamController = BehaviorSubject<Object>(); Function(Object) get addObjectToStream
final _streamController = BehaviorSubject<Object>();
Function(Object) get addObjectToStream => _streamController.sink.add;
如果您有任何建议或帮助,我们将不胜感激。我在您的代码中没有看到任何
PODO
——无论您使用什么地方,它都是对象,我只是笼统地给它命名。这是一个设备,其中只有一个id字符串值。所以使用Object Object=snapshot.data代码>@pskink,这很有效。出于某种原因,我认为快照将是传递到流中的同一个对象。我没有意识到您需要基于它实例化一个新对象。现在看起来很简单。非常感谢你抽出时间来帮助我。当然,不客气
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');
}
}),