gpt4 book ai didi

swift - 从 Children Firebase 访问值

转载 作者:行者123 更新时间:2023-11-28 12:39:36 26 4
gpt4 key购买 nike

我真的不太了解 Swift 3.0 Firebase 语法的更新,但最重要的是从快照的子项中检索值似乎是不可能的。为此,我使用了如下代码片段:

 if let snapVal = snapshot.value as? [String: AnyObject] {
for c in snapshot.children {
let cx = (c as! AnyObject)
let name = cx["NAME"] as! String

}
}

我对此采取了很多方法,但 FIRDatabaseSnapshot 在新的 Swift 3 更新中有很多限制,并且 AnyObject 不允许从对象中读取值,并且类似 NSDictionary 的类型也没有子对象。非常感谢所有帮助,谢谢!

最佳答案

您收到的 FIRDataSnapshot 类型的快照实际上是一个符合 NSObject 的自定义类,因此只有符合 的变量FIRDataSnapshot 可以访问FIRDataSnapshot 提供的自定义函数,例如.children

但是当你访问一个值为snap.value的新变量被解析为[String:AnyObject]时,基本上它变成了一个NSDictionary,而NSDictionary没有有任何参数 .children

  FIRDatabase.database().reference().child("your_Ref").observeSingleEvent(of: .value, with: {(snap) in

for each in snap.children{

print(each)


}
if let snapDict = snap.value as? [String:AnyObject]{

for each in snapDict{

let keyID = each.key
let childValue = each.value["NAME"] as! String
}
}

})

关于swift - 从 Children Firebase 访问值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39789423/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com