Stream<Month> get monthOutStream => monthOutController.stream;Stream<MySchedule> get resultOutStream => resultController.stream;
我在应用程序的两个不同状态下获取这些数据,结果是在用户的某些事件之后的开始和几个月.
MyScheduleBloc(){ initialData();}Future initialData() async { MySchedule mySchedule = await myScheduleviewmodel.importMySchedule(Now.ID); resultController.add(mySchedule);}
我的屏幕有一个streambuilder
Widget build(BuildContext context) {final webCalenderBloc = WebCalenderBloc();return StreamBuilder( stream: webCalenderBloc.resultOutStream,builder: (BuildContext context,snapdata){ if(!snapdata.hasData){ return Center( child: CircularProgressIndicator(),); } return body(snapdata.data); },);}
由于主要的小部件构建方法将带有resultoutstream的StreamBuilder小部件作为流.我在哪里获取另一个流monthoutStream.
我可以在流中获取流吗?在处理两个流时我是否缺少任何内容.我不想从monthoutstream构建任何小部件但是想要检查其中的数据.
StreamBuilder( stream: stream1,builder: (context,snapshot1) { return StreamBuilder( stream: stream2,snapshot2) { // do some stuff with both streams here },); },)
如果这对你有意义,另一个解决方案是:Streams被设计为可合并/转换.您可以创建第三个流,它是两个后续流的合并.
理想情况下,对于复杂的流 *** 作,您需要使用@L_502_0@,因为它提供了一些有用的变换器.
使用rxdart,两个Observable(它是Stream的子类)的融合如下:
Observable<bool> stream1;Observable<String> stream2;final fusion = stream1.withLatestFrom(stream2,(foo,bar) { return MyClass(foo: foo,bar: bar);});总结
以上是内存溢出为你收集整理的颤动:将两个Streams流式传输到一个屏幕上?全部内容,希望文章能够帮你解决颤动:将两个Streams流式传输到一个屏幕上?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)