相关疑难解决方法(0)

如何将 Stream<QuerySnapshot> 转换为 List<myObject>

我正在查询 Firestore 并将 Stream 作为 QuerySnapshots Stream 取回。我需要将流中包含的文档映射到对象列表。

下面的代码不起作用(显然)......也许我只是在看这完全错误。

  List<UserTask> getUserTaskList() {
    List<UserTask> list;

    Stream<QuerySnapshot> stream = 
      Firestore.instance.collection('userTasks').snapshots();
    stream.listen((snapshot) {
      snapshot.documents.forEach((doc) {
        UserTask userTask = UserTask(
            doc.data['id'],
            doc.data['Description'],
            etc...);

        list.add(userTask);
      });
    });

    return list;
  }
Run Code Online (Sandbox Code Playgroud)

使用上面的代码,由于它不等待整个流(或实际中的任何一个),因此 list 始终返回为 null。简而言之,如何将我的流转换为列表?

注意:我对 Dart 的世界还很陌生,所以对我放轻松 :)

谢谢!

dart flutter

11
推荐指数
1
解决办法
1万
查看次数

标签 统计

dart ×1

flutter ×1