Я пытаюсь аутентифицировать вновь зарегистрированных пользователей со страницы регистрации и добавлять их в мою базу данных облачного пожарного хранилища после аутентификации. На данный момент пользователи проходят проверку подлинности, и код отлично работает до этой стадии. Однако они не добавляются в базу данных Cloud-Firestore. Пожалуйста, помогите!
Container(
width: 150.0,
child: FlatButton(
child: Text('Sign Up'),
color: Colors.grey,
onPressed: () {
if (_registerFormKey.currentState.validate()) {
if (pwdInputController.text ==
confirmPwdInputController.text) {
FirebaseAuth.instance
.createUserWithEmailAndPassword(
email: emailInputController.text,
password: pwdInputController.text)
.then((currentUser) => Firestore.instance
.collection("users")
.document(currentUser.user.uid)
.setData({
"uid": currentUser.user.uid,
"first-name":
firstNameInputController.text,
"last-name":
lastNameInputController.text,
"email": emailInputController.text,
'password': pwdInputController.text,
})
.then((result) => {
Navigator.pushAndRemoveUntil(
context,
MaterialPageRoute(
builder: (context) =>
MyApp()),
(_) => false),
firstNameInputController.clear(),
lastNameInputController.clear(),
emailInputController.clear(),
pwdInputController.clear(),
confirmPwdInputController.clear()
})
.catchError((err) => print(err)))
.catchError((err) => print(err));
} else {
showDialog(
context: context,
builder: (BuildContext context) {
return AlertDialog(
title: Text("Error"),
content:
Text("The passwords do not match"),
actions: <Widget>[
FlatButton(
child: Text("Close"),
onPressed: () {
Navigator.of(context).pop();
},
)
],
);
});
}
}
},
),
),