我想知道是否有可能将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/

10-12 03:27