我有一个firebase数据库的子数据库,其内容如下:

如何在flutter中检索这个?
我当前的代码:
static Future<Query> queryUsers() async{
return FirebaseDatabase.instance
.reference()
.child("zoom_users")
.orderByChild('name');
}
queryUsers().then((query){
query.once().then((snapshot){
//Now how to retrive this snapshot? It's value data giving a json
});
});发布于 2018-08-29 16:49:16
要检索数据,请尝试执行以下操作:
db = FirebaseDatabase.instance.reference().child("zoom_users");
db.once().then((DataSnapshot snapshot){
Map<dynamic, dynamic> values = snapshot.value;
values.forEach((key,values) {
print(values["name"]);
});
});在这里,首先在子zoom_users处添加引用,然后由于value返回data['value'],因此可以将其赋给Map<dynamic, dynamic>,然后使用forEach在映射内循环并检索值,例如name。
请检查以下内容:
https://api.dartlang.org/stable/2.0.0/dart-core/Map/operator_get.html
Flutter: The method forEach isn't defined for the class DataSnapshot
发布于 2018-08-29 16:49:27
query.once().then((snapshot){
var result = data.value.values as Iterable;
for(var item in result) {
print(item);
}
});或者使用您已经使用的async
var snapshot = await query.once();
var result = snapshot.value.values as Iterable;
for(var item in result) {
print(item);
}https://stackoverflow.com/questions/52072948
复制相似问题