Я действительно не могу понять это ... Пожалуйста, помогите!
У меня есть отличное приложение, которое сканирует QR-код и возвращает строку (barcode
).Теперь я хотел бы использовать эту строку в качестве входных данных, чтобы сделать запрос пожарного.Это мой код
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");
}
});
Это не работает, и я всегда заканчиваю «Нет такой книги» всегда, даже если документ существует в коллекции пожарного депо.Интересно, что если я напишу getData('theNameOfTheDocument');
, то это сработает.Я считаю, что должно быть что-то не так с асинхронностью и обработкой будущего значения, но я могу понять ...
Это структура базы данных