Это работает при регистрации по электронной почте и паролю, но когда я использую идентификатор, который уже зарегистрирован для регистрации, он не будет отображать ошибку. Вместо этого он перенаправляет на домашнюю страницу, а в консоли пишет: PlatformException(ERROR_EMAIL_ALREADY_IN_USE, The email address is already in use by another account
Future validateForm() async {
FormState formState = _formKey.currentState;
if (formState.validate()) {
FirebaseUser user = await firebaseAuth.currentUser();
if (user == null) {
firebaseAuth
.createUserWithEmailAndPassword(
email: _emailTextController.text,
password: _passwordTextController.text)
.then((user) => {
_userServices.createUser(user.user.uid, {
"username": _nameTextController.text,
"email": _emailTextController.text,
"userId": user.user.uid,
"gender": gender,
}),
})
.catchError((err) {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("User Already Exists"),
content: Text(err.message),
actions: [
FlatButton(
child: Text("Ok"),
onPressed: () {
Navigator.of(context).pop();
},
)
],
);
});
});
Navigator.pushReplacement(
context, MaterialPageRoute(builder: (context) => HomePage()));
} else {
return ("already a user");
}
}
}