По какой-то причине, которую я не могу понять, последний оператор print выполняется перед вторым оператором print (do c .data ()). Любая помощь приветствуется. Для некоторого контекста я пытаюсь запросить данные из firestore и сохранить некоторые из этих данных в объекте User. Так почему же эти операторы печати выполняются в неправильном порядке.
let db = Firestore.firestore()
guard let uid = Auth.auth().currentUser?.uid else { return }
print("hello world")
db.collection("users").whereField("uid", isEqualTo: uid).getDocuments() { (querySnapshot, error) in
if let error = error {
print("Error finding user: \(error)")
} else {
for document in querySnapshot!.documents {
print(document.data())
}
}
}
print("Am I crazy or is Xcode?")