如何解决在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 举报,一经查实,本站将立刻删除。