因此,我在类级别声明我的用户数组,这是非常好的,并且存储我在其中输入的任何值,除非我从我的firebase数据库中检索它.我一直在为这件事而挣扎,唯一的错误,我似乎可以联系到这是也许。
由于仿真器错误,NSUserDefaults返回到从NSUserDefaults加载访问令牌
我的数组一直告诉我因为某种奇怪的原因它是空的..。
我怎样才能解决这个问题?
var allUsers = [User]()
func retrieveUsers() {
let ref = FIRDatabase.database().reference()
ref.child("users").queryOrderedByKey().observeSingleEvent(of: .value, with: { snapshot in
let users = snapshot.value as! [String : AnyObject]
self.allUsers.removeAll()
for (_, value) in users {
if let uid = value["uid"] as? String {
if uid != FIRAuth.auth()!.currentUser!.uid {
if let name = value["name"] as? String, let age = value["birthdate"] as? String {
let calculatedAge = self.calcAge(birthdate: age)
let userToShow = User(name: name,age: calculatedAge)
print(userToShow.Name)
self.allUsers.append(userToShow)
}
}
}
}
})
print(allUsers.count)
ref.removeAllObservers()
}
提前谢谢!!
发布于 2017-05-05 11:10:39
异步数据检索:-)您看到“userToShow.Name”打印出来了吗?在数据检索完成之前打印计数--尝试将其放入完成处理程序中
https://stackoverflow.com/questions/43803165
复制相似问题