我一直在嘗試按照檔案將新用戶身份驗證到 firebase,但是當我的用戶注冊時,他們的資訊沒有出現在 firebase 身份驗證中
所以我嘗試將我的密碼/電子郵件文本欄位變成一個字串,這可能有助于擺脫這個問題,但我收到了這個錯誤
無法轉換“UITextField”型別的值?到預期的引數型別“字串”
所以我嘗試使用
讓{
但是現在我根本無法在文本欄位中輸入用戶資料以將用戶資料輸入到 firebase 那么如何正確設定此代碼來驗證我的新用戶資料?
import UIKit
import FirebaseAuth
class SignUpViewController: UIViewController {
@IBOutlet weak var Email: UITextField!
@IBOutlet weak var Password: UITextField!
@IBOutlet weak var Username: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
let password = Password.text
let email = Email.text
Auth.auth().createUser(withEmail: email!, password: password!) { authResult, error in
if let error = error {
print("Error \(error.localizedDescription)")
return
} else {
}
uj5u.com熱心網友回復:
嘗試為變數使用不同的名稱,可能小寫而不是
let Password = Password.text
let Email = Email.text
利用
let password = Password.text
let email = Email.text
如果編譯器抱怨并使用 TextField 而不是其中包含的文本,或者如果您使用的是 SwiftUI,只需像這樣傳遞一個 binging:
@State private var email: String = ""
@State private var password: String = ""
TextField("Email here...", text: $email)
SecureField("Password here...", text: $password)
Button {
// ... check if fields are not null
Auth.auth().createUser(withEmail: email, password: password) { res, err in
// ...
}
} label: {
Text("Create User")
}
編輯1:
試試這個,并確保在復制粘貼時使用正確的名稱創建正確的轉場,并且情節提要組件已正確配置并允許寫入文本。
@IBOutlet weak var emailTextField: UITextField!
@IBOutlet weak var passwordTextField: UITextField!
override func viewDidLoad() {
super.viewDidLoad()
}
@IBAction func createUser(_ sender: UIButton) {
if let email = emailTextField.text, let password =
passwordTextField.text {
// create the user with email and password
}
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/515420.html