我想知道是否可以将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;
}
答案 0 :(得分:0)
我正面临着同样的问题,但我认为您的方向正确。您只需更改for循环即可。
您要将相同的QuerySnapshot设置为不同的数据(personQuery)。
而是在循环上方创建一个QuerySnapshot personQuery。
有一种方法可以使用来附加到QuerySnapshot:
personQuery.documents.add();
也不要使用getDocuments()
,因为这只会获取数据而不是流。
改为使用snapshot()
。
希望这会有所帮助:)
祝您好运。