我想知道是否有可能将firebase查询“附加”到flutter中的单个流上。将所有流合并为一个流。
此刻的代码将获取该帐户遵循的所有用户,然后遍历每个用户ID并获取其帖子。我想知道是否可以将所有这些帖子查询合并到一个主流中
Future<Stream<QuerySnapshot>> getfollowing() async{
DocumentSnapshot userQuery = await Firestore.instance.collection('Users').document(id).get();//Gets who the user follows
Stream<QuerySnapshot> fullprofilesdata ;
for (String user in userQuery["following"]) {
QuerySnapshot personQuery = await Firestore.instance.collection('Users')
.document(user).collection("posts")
.getDocuments();
//fullprofilesdata.append(personQuery);
}
return fullprofilesdata;
}
最佳答案
我正面临着同样的问题,但我认为您的方向正确。您只需更改for循环即可。
您正在将相同的QuerySnapshot设置为不同的数据(personQuery)。
而是在循环上方创建一个QuerySnapshot personQuery。
有一种方法可以通过使用追加到QuerySnapshot:
personQuery.documents.add();
也不要使用getDocuments()
,因为这只会获取数据而不是流。请改用
snapshot()
。希望这会有所帮助:)
祝大家编码好。
关于android - 如何 “append” Firebase查询快照到流,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55549977/