gpt4 book ai didi

firebase - 如何使用Firebase Firestore进行一次性简单查询?

转载 作者:行者123 更新时间:2023-12-03 04:56:47 26 4
gpt4 key购买 nike

在Dart / Flutter中并学习Firebase Firestore ...在创建UI之前,我使用以下方法进行测试:

_testFireStore() async {
var result = Firestore.instance
.collection('users')
.where('uid', isEqualTo: 'IvBEiD990Vh0D9t24l2GCCdsrAf1')
.snapshots();

await for (var snapshot in result) {
for (var user in snapshot.documents) {
print('main.DEBUG: ' + user.data.toString());
}
}
}

它按预期方式工作-最初执行print语句,但每次在Firestore数据库中的文档中的任何字段更新时,都随后实时执行。

如何更改此代码,以使快照仅被检索一次-而不是“订阅/侦听”到...,这样我们就不会在不需要/不需要的数据上浪费带宽,而print语句仅执行一次?

最佳答案

Firestore.instance.collection(...).where(...)返回Query对象。它具有一种称为getDocuments()的方法,该方法执行查询并为您提供带有一组结果的Future。

var query = Firestore.instance
.collection('users')
.where('uid', isEqualTo: 'IvBEiD990Vh0D9t24l2GCCdsrAf1');
query.getDocuments().then((QuerySnapshot snapshot) {
// handle the results here
})

或使用 await获取QuerySnapshot,因为 getDocumets()返回Future。

关于firebase - 如何使用Firebase Firestore进行一次性简单查询?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60444417/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com