您的假设是正确的。您需要创建第三个流,同时接收JSON流和过滤流,并将两者组合成自定义结果。
这通常是通过流转换器完成的。使用myStream.transform
方法。但这有点复杂。
为了使事情变得更加简单,有一个名为rxdart的软件包,该软件包基本上是子类,Stream
并添加了一些常见的转换器。
使用rxdart,您可以使用combineLatest
运算符创建第三个流
Observable<List<String>> list;
Observable<String> filter;
final output = Observable.combineLatest2(filter, list, (String filter, List<String> list) {
return list.where((str) => str.startsWith(filter));
});
有关reactx运算符的更多信息,请点击此处