cloud_firestore数据库中的数据为JSON形式。但是,如何从Map列表中的JSON转换数据?
The dummy data in my firestore
最佳答案
数据到 map 列表:
final CollectionReference ref = Firestore.instance.collection('food');
List<Map<String, dynamic>> listOfMaps = [];
await ref.getDocuments().then((QuerySnapshot snapshot) {
listOfMaps =
snapshot.documents.map((DocumentSnapshot documentSnapshot) {
return documentSnapshot.data;
}).toList();
});
print(listOfMaps);
以防万一,如果您想使用更好的方法。将数据解析为对象列表:
1)创建一个模型类:
class Food {
String affordability;
String title;
Food.fromJson(Map<String, dynamic> jsonData) {
this.affordability = jsonData['affordability'];
this.title = jsonData['title'];
}
}
2)转换为食物 list :
final CollectionReference ref = Firestore.instance.collection('food');
List<Food> list = [];
await ref.getDocuments().then((QuerySnapshot snapshot) {
list = snapshot.documents.map((DocumentSnapshot documentSnapshot) {
return Food.fromJson(documentSnapshot.data);
}).toList();
});
print(list);
关于dictionary - 如何将从cloud_firestore接收的数据转换为Map,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59042915/