Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sql-server/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用uid文档id FirebaseAuth Firestore获取Firestore字段信息_Firebase_Google Cloud Firestore_Firebase Authentication_Swiftui - Fatal编程技术网

如何使用uid文档id FirebaseAuth Firestore获取Firestore字段信息

如何使用uid文档id FirebaseAuth Firestore获取Firestore字段信息,firebase,google-cloud-firestore,firebase-authentication,swiftui,Firebase,Google Cloud Firestore,Firebase Authentication,Swiftui,在我的代码中,当用户使用email、pass和firstName注册时,我进入firebase:他们的电子邮件与uid相关,在cloudfirestore中,我获得firstName,uid作为“Users”集合中的文档id。我想显示用户名。怎么做 编辑: 在ModelData类中,我需要注册以下代码,并添加了以下内容: func signUp(){ // checking.... if email_SignUp == ""

在我的代码中,当用户使用email、pass和firstName注册时,我进入firebase:他们的电子邮件与uid相关,在cloudfirestore中,我获得firstName,uid作为“Users”集合中的文档id。我想显示用户名。怎么做

编辑:

在ModelData类中,我需要注册以下代码,并添加了以下内容:

func signUp(){
      
      // checking....
      
      if email_SignUp == "" || password_SignUp == "" || reEnterPassword == "" || userName == ""{
          
          self.alertMsg = "Error"
          self.alert.toggle()
          return
      }
      
      if password_SignUp != reEnterPassword{
          
          self.alertMsg = "Error"
          self.alert.toggle()
          return
      }
      
      withAnimation{
          
          self.isLoading.toggle()
      }
      
    Auth.auth().createUser(withEmail: email_SignUp, password: password_SignUp) { [self]    (result, err) in
          
          withAnimation{
              
              self.isLoading.toggle()
          }
          
          if err != nil{
              self.alertMsg = "Error"
              self.alert.toggle()
              return
          }
         let db = Firestore.firestore()
        let docRef = db.collection("PROFILE").document(user?.uid ?? "")
        
        db.collection("PROFILE").document(result!.user.uid).setData(["userName" : self.userName])
      
        

        docRef.getDocument { (document, error) in
            if let document = document, document.exists {
                let data = document.data()
                return data.userName
            } else {
                // Handle error here
            }
        }
        
        
          result?.user.sendEmailVerification(completion: { (err) in
              
              if err != nil{
                  self.alertMsg = err!.localizedDescription
                  self.alert.toggle()
                  return
              }
              
              // Alerting User To Verify Email...
              
              self.alertMsg = ""
              self.alert.toggle()
          })
      }
  }

在获取类型“[String:Any]”的错误
值时,没有成员“userName”

中,您将在用户firestore集合中查询文档id(uid),获取()数据,然后返回数据。firstName:

let docRef = db.collection("Users").document(uid)

docRef.getDocument { (document, error) in
    if let document = document, document.exists {
        let data = document.data()
        return data.firstName
    } else {
        // Handle error here
    }
}

谢谢您的回复!但是,我仍然面临问题。我刚刚更新了我的问题我应该在哪里添加此代码?就在setData()之后?