Im trying to use user to the authentication of firebase and also firestore. Whhen I click on Save, the function SavePress is activated. The first time I click on this button, the user is added to firebase authentication but user is equal to null. Only at the second time it's work. If anyone can help me..
Here is my code :
SavePress=async()=>{
if(this.state.email==="" || this.state.password==="" || this.state.firstname==="" || this.state.lastname==="" || this.state.confirmpassword==="" || (this.state.status===""))
{
alert("All fields are required")
}
else{
await firebase.auth().createUserWithEmailAndPassword(email,password)
.then(
firebase.auth().onAuthStateChanged(user=>
{
console.log("user : ",user)
if(user!=null)
{
firebase.firestore().collection("Users").doc(firebase.auth().currentUser.uid)
.set({firstname,lastname,email,status})
.then(this.checkStatus(status,{user}))
}
})
)
.catch((error)=>
{
console.log(error.code);//revoir cette erreur
if(error.code == "auth/email-already-in-use")
{alert("User already exists. Try to log in")}
})
}
}