func fetchAllUsers() {
Database.database().reference().child("users").queryOrderedByKey().observeSingleEvent(of: .value) { (snapshot) in
let sv = snapshot.value as! [String: AnyObject]
//self.users.removeAll()
for (_, value) in sv {
if let uid = value["uid"] as? String {
if uid != Auth.auth().currentUser!.uid {
if let firstname = value["firstname"] as? String, let lastname = value["lastname"] as? String, let username = value["username"] as? String, let bio = value["bio"] as? String {
let newUser = User(firstname: firstname, lastname: lastname, username: username, bio: bio, uid: uid)
self.users.append(newUser)
}
}
}
}
}
Database.database().reference().removeAllObservers()
}
I get the user data so it retrieves it from the database, but whenever I try to append the user to my user array:
var users = [User]()
I print it after I call the function and it says it's empty. I'm confused because when I print it in the function it says it in there. So I really don't know what I'm doing wrong. I'm doing this for fun and for a test to send and retrieve data from a database (firebase).