это должно взять идентификатор пользователя из результата! .User.uid и сохранить его как переменную или функцию, чтобы я мог использовать его снова. проблема в том, что я не знаю, как заставить его хранить значение вне этой функции. Айв попытался сохранить его в переменной вне функции начальной кнопки, а также попытался вернуть его за пределы функции, удалив часть кода, из-за которой она стала недействительной. Я не уверен, куда мне нужно идти / что еще я могу попробовать и сделать, чтобы решить эту проблему. Если кто-нибудь знает, как мне получить идентификатор моего документа из этого кода, ваша помощь будет очень признательна
@IBAction func NextButtonTapped(_ sender: Any) {
//validate the fileds
let Error = validateFields()
if Error != nil {
// there is somthing wrong with the fields show error message
showError(Error!)
}
else {
// create cleaned versions of the data
let Password = PasswordTextField.text!.trimmingCharacters(in: .whitespacesAndNewlines)
let Email = EmailTextField.text!.trimmingCharacters(in: .whitespacesAndNewlines)
let Firstname = FirstnameTextField.text!.trimmingCharacters(in: .whitespacesAndNewlines)
let Lastname = LastnameTextField.text!.trimmingCharacters(in: .whitespacesAndNewlines)
let Age = AgeTextField.text!.trimmingCharacters(in: .whitespacesAndNewlines)
// create the user
Auth.auth().createUser(withEmail: Email, password: Password) { (results, Err) in
// check for errors
if Err != nil {
// there was an error creating the user
self.showError("Error creating user")
}
else {
// user was created succesfully store first and last name
let db = Firestore.firestore()
db.collection("users").document(results!.user.uid).setData(["first name":Firstname, "last name":Lastname, "age":Age, "uid":results!.user.uid]) { (Error) in
if Error != nil {
// show error message
self.showError("error saving user data")
}
//showing users document id
}
//transition to the home screen
self.transitionToHome()
}
}
}
}
Я понятия не имею, что делать, любая помощь будет потрясающей,
большое спасибо много !!!!