Начиная с Firebase API 5.0, метод createUser () возвращает FIRAuthDataResultCallback вместо Пользователь объект напрямую.
В вашем случае вы можете исправить это, внеся следующие изменения:
func signup(email: String, password: String) {
Auth.auth().createUser(withEmail: emailText.text!, password: passwordText.text!, completion: { (user, error) in
if error != nil {
print(error!)
}else {
self.createProfile(user!.user) //Here's how you can fix it
let homePVC = RootPageViewController()
self.present(homePVC, animated: true, completion: nil)
}
})
}
Для большей читаемости кода я заменил бы ваш код следующим образом:
func signup(email: String, password: String) {
Auth.auth().createUser(withEmail: emailText.text!, password: passwordText.text!, completion: { (authResult, error) in
if error != nil {
print(error!)
}else {
self.createProfile(authResult!.user)
let homePVC = RootPageViewController()
self.present(homePVC, animated: true, completion: nil)
}
})
}