I have the below fetch function. How can I add a completion block so when it finishes I can do something?
This query will run the code inside more than once.
func getFollowers() {
print("get followers called")
let ref = Database.database().reference()
ref.child("users2").child((Auth.auth().currentUser?.uid)!).child("Following").observe(.childAdded) { (snap) in
let personBeignFollow = snap.key
self.peopleUserFollows.append(personBeignFollow)
print("Appened: ", personBeignFollow)
self.fetchAllUserFirstPostMedia(user: personBeignFollow)
}
}
I have looked here but was not able to make it work.
Here is what I tried:
func getFollowers(_: ()-> ()) {
print("get followers called")
let ref = Database.database().reference()
ref.child("users2").child((Auth.auth().currentUser?.uid)!).child("Following").observe(.childAdded) { (snap) in
let personBeignFollow = snap.key
self.peopleUserFollows.append(personBeignFollow)
print("Appened: ", personBeignFollow)
self.fetchAllUserFirstPostMedia(user: personBeignFollow)
}
}
Then where it is called:
getFollowers() {
self.collectionView.reloadData()
}