Asynchronous 弗利特:我能';无法从firestore集合获取文档。。。为什么?
我真的无法理解这一点。。。请帮忙 我有一个很棒的应用程序,可以扫描二维码并返回字符串(Asynchronous 弗利特:我能';无法从firestore集合获取文档。。。为什么?,asynchronous,flutter,google-cloud-firestore,Asynchronous,Flutter,Google Cloud Firestore,我真的无法理解这一点。。。请帮忙 我有一个很棒的应用程序,可以扫描二维码并返回字符串(条形码)。现在我想使用该字符串作为输入来创建firestore enquery。这是我的密码 Future barcodeScanning() async { try { String barcode = await BarcodeScanner.scan(); getData(barcode); } catch (e) { setStat
条形码
)。现在我想使用该字符串作为输入来创建firestore enquery。这是我的密码
Future barcodeScanning() async {
try {
String barcode = await BarcodeScanner.scan();
getData(barcode);
} catch (e) {
setState(() => barcodeFinal = 'Unknown error: $e');
}
}
void getData(String zz) {
DocumentReference documentReference = Firestore.instance.collection('books').document(zz);
documentReference.get().then((datasnapshot) {
if (datasnapshot.exists) {
print(datasnapshot.data['name'].toString());
} else {
print("No such book");
}
});
这不起作用,我总是以“没有这样的书”结尾,即使文档存在于firestore集合中。有趣的是,如果我写getData('thenameofdocument')代码>然后它就工作了。我相信异步和处理将来的值肯定有问题,但我可以找出
这是数据库结构
请附上数据库结构的屏幕截图,因为您可能需要运行“where()”查询以获取信息。谢谢,我会的,但是我只想得到一个文档,我知道文档ID。我不是在查询集合。我只想得到一份文件,二维码zz和DocumendID会有所不同。books->DocumendID->Document()在我的示例中,二维码zz实际上就是documentID。a把文件参考弄错了吗?要获取文档,我需要.collection('collectionName').document('documentID'),对吗?如果您能显示Firestore结构,我可以告诉您更多信息,您是如何存储值的