Ошибка повторной аутентификации пользователя с помощью Firebase / Xcode (для обновления электронной почты пользователя) - PullRequest
0 голосов
/ 21 июня 2019

Я пытаюсь создать экран «обновить электронную почту» для приложения iOS, используя Xcode Version 10.2.1 и Firebase.Весь код для обновления электронной почты с помощью Firebase работает нормально, но я получаю следующую ошибку при попытке повторной аутентификации пользователя:

Невозможно преобразовать значение типа '(_) -> () к ожидаемому типу аргумента 'AuthDataResultCallback?'(aka 'Необязательно <(Необязательно, Необязательно) -> ()>')

О, и я использую учетные данные электронной почты для пользователей аутентификации.

Я искал несколькоПотоки здесь и изучили документацию Firebase и не могут понять, что является причиной этой ошибки.

Вот мой код, который я извлек из Документации Firebase , а также этой темы :

let user = Auth.auth().currentUser
var credential: AuthCredential = EmailAuthProvider.credential(withEmail: "email", password: "pass")

user?.reauthenticate(with: credential) { error in
     if let error = error {
        // error handled here
     } else {
        // success
     }
}

Ошибка появляетсяв строке «user? .reauthenticate (with: credential) {error in».

Кто-нибудь знает, что это вызывает?

(И, прошу прощения, если я упустил что-то очевидное. Я относительно новичок в работе со Swift / Xcode.)

СПАСИБО !!

1 Ответ

0 голосов
/ 21 июня 2019

Я думаю, вам не хватает результата параметра

let user = Auth.auth().currentUser
var credential: AuthCredential = EmailAuthProvider.credential(withEmail: "email", password: "pass")

user?.reauthenticate(with: credential) { result, error in
     if let error = error {
        // error handled here
     } else {
        // success
     }
}

, где результатом является AuthDataResult , который содержит результат успешного входа.

...