我正在尝试访问键1的值。这是我的Firebase图:
这是我的代码:
@IBAction func ridefinder(_ sender: Any) {
let ref = Database.database().reference()
ref.child("name/hi").observeSingleEvent(of: .value) { (snapshot) in
print(snapshot.value as? [String:Any])
}
当我运行它时,它会打印nil
,但是当我对其稍作更改时:
@IBAction func ridefinder(_ sender: Any) {
let ref = Database.database().reference()
ref.child("name").observeSingleEvent(of: .value) { (snapshot) in
print(snapshot.value as? [String:Any])
}
它在内部打印两组键值对。
如何仅访问名称中的键hi
的值?
答案 0 :(得分:0)
尝试:
let ref = Database.database().reference()
ref.child("name").observeSingleEvent(of: .value) { (snapshot) in
if let value = snapshot.value as? [String:Any], let hi = value["hi"] as? String {
print(hi)
}
}
通过使用snapshot.value访问数据库引用内的值,并将其强制转换为[String:Any]。然后,您可以在字典中找到所需的值,就像始终以dictionary [“ key”]的方式访问它们一样。