我试图让多个查询到公司的FireStore和结果合并到一个流喜欢。我尝试使用,StreamGroup.merge()但是它只返回一个流的结果。我注意到它实际上确实获取了所有流的数据,但仅在所有内容完成后才返回一个。这是我所做的:
StreamGroup.merge()
Stream getStream(){ List<Stream> streams = []; streams.add(Firestore.instance.collection(Constants.REQUESTS_NODE). where("municipality",isEqualTo: "City of Johannesburg Metropolitan"). where("service_id",isEqualTo: 2). snapshots()); streams.add(Firestore.instance.collection(Constants.REQUESTS_NODE). where("municipality",isEqualTo: "Lesedi Local").where("service_id",isEqualTo: 2). snapshots()); return StreamGroup.merge(streams); }
我错过了什么,做错了什么?我这样做的原因是为了弥补Firestore缺乏OR运营商的不足。
OR
对于将来可能需要帮助的任何人,我设法使用解决了该问题StreamZip。您可以从此网站上了解更多信息
StreamZip