StreamBuilder如果需要,可以嵌套。没有什么可以阻止您执行以下 *** 作:
StreamBuilder( stream: stream1, builder: (context, snapshot1) { return StreamBuilder( stream: stream2, builder: (context, snapshot2) { // do some stuff with both streams here }, ); },)
如果这对您有意义,则另一个解决方案是:流被设计为可合并/转换的。您可以创建第三个流,该流是后面两个流的合并。
对于复杂的流 *** 作,理想情况下,您将需要使用rxdart,因为它提供了一些有用的转换器。
使用rxdart,两个
Observable(属于的子类
Stream)的融合如下:
Observable<bool> stream1;Observable<String> stream2;final fusion = stream1.withLatestFrom(stream2, (foo, bar) { return MyClass(foo: foo, bar: bar);});
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)