Ios 如何在firebase中更新用户信息?

Ios 如何在firebase中更新用户信息?,ios,swift,firebase,firebase-authentication,Ios,Swift,Firebase,Firebase Authentication,我有此功能来更改用户电子邮件。我可以更改电子邮件,并且可以在firebase控制台中看到它,但当我返回应用程序查看用户信息时,我只看到显示的旧电子邮件 @IBAction func saveButton(_ sender: Any) { let currentUser = Auth.auth().currentUser currentUser?.updateEmail(to: emailTextField.text!) { error in if let erro

我有此功能来更改用户电子邮件。我可以更改电子邮件,并且可以在firebase控制台中看到它,但当我返回应用程序查看用户信息时,我只看到显示的旧电子邮件

@IBAction func saveButton(_ sender: Any) {
    let currentUser = Auth.auth().currentUser
    currentUser?.updateEmail(to: emailTextField.text!) { error in
        if let error = error {
            print(error)
        } else {
            self.userDocRef = self.db.collection("users").document(self.auth.currentUser!.uid)
            self.userDocRef?.getDocument(completion: {(snapshot, error) in
                guard snapshot != nil else { print("Error:", error!); return }
                let userData = snapshot!.data()!
                self.emailTextField.text = userData["email"]! as? String
            })
            print("CHANGED")

        }
    }
}

当您说“我返回应用程序查看用户信息”时,应用程序使用了什么代码?您是否正在使用
currentUser
?@FrankvanPuffelen yes您可以更新代码以在回调中打印
Auth.Auth().currentUser?.email
?据我所知,这应该得到更新。如果没有为您更新,请编辑您的问题以显示更新的代码和打印语句的输出。您省略了一个步骤。。。您正在更新此处的用户FIREBASE对象
currentUser?.updateEmail
,但随后从FIREBASE读取一个节点,该节点包含一个名为“email”的字段,该字段在此处
self.userDocRef?.getDocument
,与此无关。如果您将用户电子邮件同时存储在Firebase用户对象和文档中,则需要同时更新这两个对象。