При создании нового пользователя в моем приложении flutter я получил ошибку firebase_auth createUserWithEmailAndPassword

#flutter #flutter-dependencies

#флаттер #flutter-зависимости

Вопрос:

Я создаю приложение для блога, при создании нового пользователя я получил следующую ошибку.

I / flutter (1603): ‘file:///C:/flutter/.pub-cache/hosted/pub.dartlang.org/firebase_auth-0.8.4 5/lib/src/firebase_auth.dart’ : Неудачное утверждение: строка 103 поз 12: «электронная почта ! = null»: неверно.

Приведенное выше сообщение отображается в терминале, когда я когда-либо хотел создать нового пользователя в своем приложении flutter.

Ниже приведен код для моей страницы создания учетной записи, где я использовал функцию UserManagement () для хранения пользовательских данных в firestore.

 Padding(
                        padding:
                            const EdgeInsets.fromLTRB(25.0, 10.0, 25.0, 10.0),
                        child: TextFormField(
                          decoration: InputDecoration(
                              labelText: "E-mail",
                              border: OutlineInputBorder(
                                  gapPadding: 10.0,
                                  borderRadius: BorderRadius.circular(30.0))),
                          onSaved: (value) {
                            setState(() {
                              _email = value;
                            });
                          },),
                      ),
                      Padding(
                        padding:
                            const EdgeInsets.fromLTRB(25.0, 10.0, 25.0, 10.0),
                        child: TextFormField(
                          obscureText: true,
                          decoration: InputDecoration(
                              labelText: "Password",
                              border: OutlineInputBorder(
                                  gapPadding: 10.0,
                                  borderRadius: BorderRadius.circular(30.0))),
                                   onSaved: (value) {
                            setState(() {
                              _password = value;
                            });
                          },
                ),
              ),
              Container(
                child: Column(
                  mainAxisAlignment: MainAxisAlignment.center,
                  children: <Widget>[
                    StreamBuilder<Object>(
                        stream: null,
                        builder: (context, snapshot) {
                          return SizedBox(
                              width: 367.0,
                              height: 60.0,
                              // Padding(
                              //   padding: const EdgeInsets.all(8.0),
                              child: RaisedButton(
                                child: Text("Next",
                                    style: TextStyle(
                                        color: Colors.white,
                                        fontWeight: FontWeight.w300)),
                                color: Colors.black54,
                                onPressed: () {
                                  if (_formkey.currentState
                                      .validate()) {
                                        FirebaseAuth.instance.createUserWithEmailAndPassword(
                                          email: _email,
                                          password: _password,
                                        ).then((signedInUser){
                                          UserManagement().storeNewUser(signedInUser, context);

                                        }).catchError((e){
                                          print(e);
                                        });
  

Вот код для функции UserManagement()

 class UserManagement {
  storeNewUser(user, context) {
    Firestore.instance.collection('/users').add({
      'email': user.email,
      'uid': user.uid,
    }).then((value) {
      StreamBuilder<Object>(
          stream: null,
          builder: (context, snapshot) {
            Navigator.of(context).pop();
            Navigator.push(
                context, MaterialPageRoute(builder: (context) => Desc()));
          });
    }).catchError((e) {
      print(e);
    });
  }
}
  

Комментарии:

1. Вы перенесли свои поля в форму? flutter.dev/docs/cookbook/forms/validation