Я использую Firebase для iOS, чтобы удалить пользователя. Для этого мне нужно сначала подтвердить подлинность пользователя, а затем удалить учетную запись.
Я передаю обработчик завершения из .delete()
на мой взгляд, а затем проверяю ошибки. Но что, если во время .reauthenticate()
возникает ошибка Как я могу передать обработчики UserProfileChangeCallback
и AuthDataResultCallback
обратно в мое представление? Мне нужно получить ошибки и результат от них обоих.
func delete(password: String, handler: @escaping UserProfileChangeCallback) -> Void {
if let user = Auth.auth().currentUser {
// Prompt the user to re-provide their sign-in credentials
// user.reauthenticate(with: AuthCredential, completion: AuthDataResultCallback?)
user.reauthenticate(with: EmailAuthProvider.credential(withEmail: user.email!, password: password)) { (result, error) in //AuthDataResult?
if let error = error {
print(error.localizedDescription)
// I need this error in my view too
} else {
user.delete(completion: handler)
}
}
}
}