【发布时间】:2018-01-05 10:14:43
【问题描述】:
我正在尝试在登录后从数据库中检索一些字符串,但是我的代码永远不会运行所有内容。如下:
@IBAction func SignIn(_ sender: Any) {
FIRAuth.auth()?.signIn(withEmail: EmailTextField.text!, password: PasswordTextField.text!, completion: {
(user, error) in
if error == nil {
print("no error")
if let user = FIRAuth.auth()?.currentUser {
print("no error")
//if user.isEmailVerified == true {
let ref = FIRDatabase.database().reference()
let userID = FIRAuth.auth()?.currentUser?.uid
ref.child("users").child(userID!).observeSingleEvent(of: .value, with: { snapshot in
print("no error")
let snapDict = snapshot.value as? NSDictionary
let type = snapDict?["type"] as? String ?? ""
print(type)
})
//} else {
//error email isnt verified
//}
}
} else {
print(" error")
if let errCode = FIRAuthErrorCode(rawValue: error!._code) {
switch errCode {
case .errorCodeInvalidEmail: break
//invalid email
case .errorCodeUserNotFound: break
//user doesnt exist
case .errorCodeWrongPassword: break
//incorrect password
default: break
//error occured
}
}
}
})
}
print(type) 永远不会被打印,但其他一切都会被打印。我不确定为什么会这样。
【问题讨论】:
标签: swift firebase swift3 firebase-realtime-database firebase-authentication