我过去经常快速编写snapshot.children.allObjects。如何在带有Firebase的Flutter中编写此代码?如果我使用snapshot.value作为! [String:Any]快照的节点未从数据库中按顺序检索。还有其他选项可从Firebase控制台按顺序检索对象吗?
query.observeSingleEvent(of: .value, with: { (snapshot) in
guard let snapshot = snapshot.children.allObjects as? [DataSnapshot]
else { return completion(nil, []) }
snapshot.forEach({ (postSnapshot) in
print(postSnapshot)
})
})
答案 0 :(得分:0)
尝试以下操作:
FirebaseDatabase database = new FirebaseDatabase(app: widget.app);
_messagesRef = database.reference().child('users');
database.reference().once().then((DataSnapshot snapshot) {
var names=snapshot.value["name"].toString();
var email=snapshot.value["email"].toString();
});
假设您有此数据库:
users
name: "userx"
email: "userx@gmail.com"
首先,您配置数据库,然后引用子项users
上的位置。然后,您附加一个侦听器once()
来检索数据。
检查以下链接:
https://github.com/flutter/plugins/blob/master/packages/firebase_database/lib/src/event.dart#L27 https://pub.dartlang.org/packages/firebase_database#-example-tab-