微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在Firestore中读取数据时遇到问题

如何解决在Firestore中读取数据时遇到问题

我正在尝试使用Firestore作为数据库使用Flutter构建应用程序。我在查找文档的子集合时遇到了一些问题。我在恢复数据时遇到了麻烦,在列表功能的末尾,我需要她等待返回之前的listCanecas,我​​试图在多个地方进行等待,但是没有用,我正在使用MobX:>

     @override
  Stream<List<Botijao>> list() {
    listCanecas = [];
    return firestore
        .doc(this.doc.path)
        .collection("botijoes")
        .snapshots()
        .map((query) {
      return query.docs.map((doc) {
        doc.reference.collection('canecas').snapshots().listen((getCanecas));
        return Botijao.fromMap(doc,listCanecas);
      }).toList();
    });
  }
  
  getCanecas(QuerySnapshot snapshot) async {
    for (var doc in snapshot.docs) {
      getRacks(doc).listen((racks) {
        listCanecas.add(Caneca.fromMap(doc.reference,racks));
      });
    }
  }

  Stream<List<Rack>> getRacks(DocumentSnapshot doc) {
    return firestore
        .doc(doc.reference.path)
        .collection("racks")
        .snapshots()
        .map((query) {
      return query.docs.map((docR) {
        return Rack.fromMap(docR);
      }).toList();
    });
  }

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。