Firebase FlatterFire-如果Firestore查询';结果。存在';有结果时返回true,如果没有结果,返回值是多少?
在我的数据库中,有一个文档具有字段bizCode:“123456”。运行下面的命令将返回TRUE并打印“code exists” 但是,当我将isEqualTo更改为:“abcdef”(数据库中不存在)时,不会返回或打印任何内容 当查询没有结果时,我应该如何编码,以打印返回false、null或空,并打印“无此类代码”Firebase FlatterFire-如果Firestore查询';结果。存在';有结果时返回true,如果没有结果,返回值是多少?,firebase,flutter,google-cloud-firestore,Firebase,Flutter,Google Cloud Firestore,在我的数据库中,有一个文档具有字段bizCode:“123456”。运行下面的命令将返回TRUE并打印“code exists” 但是,当我将isEqualTo更改为:“abcdef”(数据库中不存在)时,不会返回或打印任何内容 当查询没有结果时,我应该如何编码,以打印返回false、null或空,并打印“无此类代码” await FirebaseFirestore.instance .collection(&quo
await FirebaseFirestore.instance
.collection("users")
.where('bizCode', isEqualTo: '123456')
.get()
.then((querySnapshot) {
querySnapshot.docs.forEach((result) {
print(result.exists);
if (result.exists) {
print('code exists');
} else {
print('no such code');
}
});
我想你应该检查
querySnapshot.hasError
和querySnapshot.size>0
我想你应该检查querySnapshot.hasError
和querySnapshot.size>0
我可以给你一个主意。您可以检查结果的长度像这样做
await FirebaseFirestore.instance
.collection("users")
.where('bizCode', isEqualTo: '123456')
.get()
.then((querySnapshot) {
if(querySnapshot.size > 0){
var results = querySnapshot.docs;
results.forEach((result) {
if (result.exists) {
print('code exists');
} else {
print('no such code');
}
}else{
print("No Results Found!");
}
});
希望这适合你的情况。我可以给你一个主意。您可以检查结果的长度
像这样做
await FirebaseFirestore.instance
.collection("users")
.where('bizCode', isEqualTo: '123456')
.get()
.then((querySnapshot) {
if(querySnapshot.size > 0){
var results = querySnapshot.docs;
results.forEach((result) {
if (result.exists) {
print('code exists');
} else {
print('no such code');
}
}else{
print("No Results Found!");
}
});
希望这适合你的情况。谢谢!我想现在querySnapshot.size已经足够使用了。谢谢!我想现在querySnapshot.size已经足够使用了。