Bin*_*dey 2 ios firebase swift firebase-authentication
我正在尝试在 Firebase 中使用AuthErrorCode但我不断收到错误。这是我的代码:
private func handleErrors(err: NSError, loginHandler: LoginHandler?) {
if let errCode = AuthErrorCode(rawValue: err.code) {
switch errCode {
case .errorCodeWrongPassword: //Enum case 'errorCodeWrongPassword' not found in type 'AuthErrorCode'
loginHandler?(LoginErrorCode.WRONG_PASSWORD)
break
case .errorCodeInvalidEmail: //Enum case 'errorCodeInvalidEmail' not found in type 'AuthErrorCode'
loginHandler?(LoginErrorCode.INVALID_EMAIL)
break
case .errorCodeUserNotFound: //Enum case 'errorCodeUserNotFound' not found in type 'AuthErrorCode'
loginHandler?(LoginErrorCode.USER_NOT_FOUND)
break
case .errorCodeEmailAlreadyInUse: //Enum case 'errorCodeEmailAlreadyInUse' not found in type 'AuthErrorCode'
loginHandler?(LoginErrorCode.EMAIL_ALREADY_IN_USE)
break
case .errorCodeWeakPassword: //Enum case 'errorCodeWeakPassword' not found in type 'AuthErrorCode'
loginHandler?(LoginErrorCode.WEAK_PASSWORD)
break
default:
loginHandler?(LoginErrorCode.PROBLEM_CONNECTING)
break
}
}
}
Run Code Online (Sandbox Code Playgroud)
有人知道我做错了什么吗?如果您没有看到我的代码中的错误,它们是:
Enum case 'errorCodeWrongPassword' not found in type 'AuthErrorCode'
Enum case 'errorCodeInvalidEmail' not found in type 'AuthErrorCode'
Enum case 'errorCodeUserNotFound' not found in type 'AuthErrorCode'
Enum case 'errorCodeEmailAlreadyInUse' not found in type 'AuthErrorCode'
Enum case 'errorCodeWeakPassword' not found in type 'AuthErrorCode'
Run Code Online (Sandbox Code Playgroud)
如果你们有任何想法请告诉我!
它们在 Swift 中导入,例如:从所有 case 值中AuthErrorCode.weakPassword删除。errorCode
private func handleErrors(err: NSError, loginHandler: LoginHandler?) {
guard let errCode = AuthErrorCode(rawValue: err.code)
else { return }
switch errCode {
case .wrongPassword:
loginHandler?(LoginErrorCode.WRONG_PASSWORD) // Transform to wrongPassword
case .invalidEmail:
loginHandler?(LoginErrorCode.INVALID_EMAIL)
case .userNotFound:
loginHandler?(LoginErrorCode.USER_NOT_FOUND)
case .emailAlreadyInUse:
loginHandler?(LoginErrorCode.EMAIL_ALREADY_IN_USE)
case .weakPassword:
loginHandler?(LoginErrorCode.WEAK_PASSWORD)
default:
loginHandler?(LoginErrorCode.PROBLEM_CONNECTING)
}
}
Run Code Online (Sandbox Code Playgroud)
快速建议:
break在 switch 语句中使用,它们在 case 完成后默认中断(fallthrough允许您在匹配后检查每个 case)NSError为Error(Firebase 使用 NSError,如果你想切换到 Error ,请阅读Swift 4 get error code from error)| 归档时间: |
|
| 查看次数: |
3178 次 |
| 最近记录: |