我在 firebase 上有一个分数和名称数组,我想接收该数组并将其放入一个数组中。我按照文档所说的进行操作,最终得到了这个......
databaseRef.child("Leaderboard").queryOrderedByKey().observe(.childChanged, with: {
snapshot in
let value = snapshot.value as? NSDictionary
//Add data to variables
}
但是
value
正在被转换为字典,我有两个想要接收的数组,如何在不混合它们的情况下访问它们?
我的 Firebase 层次结构如下所示
Leaderboard
Scores
50
47
... //Continues
Names
John Doe
BOB
...//Continues
为每个写一个并将其投射到
Array
var yourArray = [Int]()
if let scores = snapshot.value as? NSArray{
for i in 0..<scores.count {
yourArray.append(scores[i] as! Int)
}
}
对
Names
做同样的事情
要从 firebase 检索数组,请强制转换为 [Type]
"array_firebase"
是 firebase 文档中的密钥
在此示例中是一个字符串数组:
let array = data["array_firebase"] as? [String] ?? []