因此,我目前正在研究像snapchat这样的克隆,并且我正在向服务器发送拉请求,但是对于下载,它不太好。我创建了一个参考看起来像这样的数据库,Swift中的FirebaseDatabase查询问题
var recievers: FIRDatabaseReference{
return mainRef.child("pullRequests")
}
,然后我有一个分析数据(我知道是不是去了解这一点的最好方式的viewController,但我只是想得到它现在的工作),并在那里我有这个
DataService.instance.recievers.observeSingleEvent(of: .value) {(recipients: FIRDataSnapshot) in
if let recipient = recipients.value as? Dictionary<String,AnyObject>{
var index = 0;
for(key,value) in recipient{
index = index+1
if let dict = value as? Dictionary<String,AnyObject>{
if let reciever = dict["recipents"] as? Dictionary<String,AnyObject>{
if let num = reciever["\(index)"] as? String{
let uid = num
recipientsArr.append(uid)
}
}
}
}
}
}
for i in 0...recipientsArr.count{
print(i)
}
我没有得到任何编译错误,但它也没有添加任何进入recipientsArr,任何人都可以帮助指导我在正确的方向?
我的火力地堡看起来是这样的:
我试图阅读只有recipents元素“tLvt ...”,“JqIr ..”等放在recipientsArr,我也试过你的方法,它导致了相同的结果。看起来好像什么都没有被添加到数组 – andrewF
你有没有运行调试器来查看快照解码失败的位置?只是为了确保 - ObserveSingleEvent的回调函数甚至调用了吗?如果你想读取收件人列表的变化,最好选择这个作为你的参考:mainRef.child(“pullRequests”)。child(“recipents” ) –