Try to make a login system with firebase .When I sign Up , data store firebase and give me verification mail,its useless . I need first give me mail when I confirmed then data store firebase .It's perfectly work if I can't use verification ,perfectly store data and work fine .when i use verification its give me email and store data same time its not waiting my confirmation..
const SignUp = () => {
const [user, setUser] = useState({
isSignIn: false,
name: '',
email: '',
password: '',
confirmPassword: '',
error: '',
passwordError: '',
success: false
})
//check function password & confirm password equal or not
const isPasswordConfirmed = (password, confimPassword) => {
if (password && confimPassword && password === confimPassword) return true;
return false;
}
const handleSubmit = (event) => {
event.preventDefault()
if (!isPasswordConfirmed(user.password, user.password_confirm)) {
let newuser = { ...user }
newuser.passwordError = "password not matching"
setUser(newuser)
return;
}
// user.sendEmailVerification()
const newname= firebase.auth().createUserWithEmailAndPassword(user.email,
user.password)
.then((userCredential) => {
// Signed in
var user = userCredential.user;
user.sendEmailVerification() //mail verification firebase
let newuser = { ...user }
newuser.error = ""
setUser(newuser)
// UserInfoPass(user.name)
// ...
})
.catch((error) => {
var errorCode = error.code;
var errorMessage = error.message;
user.isSignIn = false
let newuser = { ...user }
newuser.error = errorMessage
setUser(newuser)
});
}