Быстрые несколько обработчиков обратного вызова - PullRequest
0 голосов
/ 06 апреля 2020

Я использую 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)
            }
        }
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...