【发布时间】:2019-08-27 23:00:15
【问题描述】:
我是 Flutter 和 Dart 的新手。我有以下代码:
class ItemRepository {
final Firestore _firestore = Firestore.instance;
Future<List<Item>> loadItems() async {
List<Item> itemList = [];
_firestore.collection('items').snapshots().listen((data) {
data.documents.forEach((doc){
print("------- KODE: ${doc['kode']}");
itemList.add(Item(doc['kode'], doc['name']));
});
});
return itemList;
}
}
当我使用以下代码拨打我的loadItems 时:
Stream<ItemState> _mapLoadItemsToState() async* {
try {
final data = await this.repo.loadItems();
print('-------------------------------');
print(data.length);
} catch(e) {
print(e.toString());
}
}
无需等待从 Firebase 返回数据。我将await 添加到_firestore.collection('items').snapshots() 但没有运气。
有什么想法吗? 感谢您的任何建议。抱歉英语不好。
【问题讨论】:
标签: firebase dart flutter async-await google-cloud-firestore