不让我返回用户名值,因为它在闭包中。请有人解释一下如何使用 @escaping 和 void 闭包。
错误:在 void 函数中出现意外的非 void 返回值。
错误:在 void 函数中出现意外的非 void 返回值。
func grabUsername () -> String {
let uid = Auth.auth().currentUser?.uid
let database = Firestore.firestore().collection("Users").document(uid!)
database.getDocument { (docSnapshot, error) in
guard let docSnapshot = docSnapshot, docSnapshot.exists else {return}
let mydata = docSnapshot.data()
let username = mydata!["Username"] as? String ?? ""
return username
}
}