如果在等待状态下等待一次,则在Firebase中读取了多少内容,我运行了一个循环,总共有20个文档,但是我的循环将在检查后过滤掉一些文档。检查后将需要10个数据。但是要拍摄,它需要阅读20个文档。那么它会计数多少次阅读?我听到有人在等一读。但是我的Firebase仪表板显示的速度是原来的5/6倍。在图片中我显示了代码。 请告诉我该阅读多少计数?
Future getUser() async {
final id = await FirebaseAuth.instance.currentUser();
userId=id.uid;
await Firestore.instance.collection('user').getDocuments().then((users) {
print("loop running");
for (var user in users.documents) {
if ((!seenList1.contains(user.documentID)) &&
(!chosenList1.contains(user.documentID)) &&
(!showId1.contains(user.documentID)) &&
(user.documentID != userId) &&
("male" == user['gender'])
) {
loc(user['Location'].latitude, user['Location'].longitude).then((result){
if(result==true){
setState(() {
showId1.add(user.documentID) ;
showName1.add(user['name']) ; }
});
}
}
});
return ;
}
答案 0 :(得分:0)
对getDocuments()
的调用确定读取了多少文档。因此,在您的情况下:
Firestore.instance.collection('user').getDocuments()
这意味着将读取user
集合中的所有文档。如果这些文档还不在设备的本地缓存中,则Firestore必须在服务器上读取它们并将它们返回给客户端。
所以说您的缓存是空的:这意味着您需要向user
集合中的每个文档收取读取费用,以及用于下载这些文档的总带宽。