微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

颤抖:不导航到另一页

如何解决颤抖:不导航到另一页

我想要得到的是,当我以应该可以进入另一页的形式输入ID和密码时。但是,当我按Submit时,什么也没发生。我得到的错误是使用不相关类型的引用进行的Equality运算符==调用。有什么办法解决这个问题?

  Form(
                    key: _formKey,child: Column(children: <Widget>[
                      TextFormField(
                        controller: nameController,decoration: Inputdecoration(labelText: 'Id'),keyboardType: TextInputType.emailAddress,validator: (value) {
                          if (value.isEmpty) {
                            return 'Enter id';
                          }
                          return null;
                        },),TextFormField(
                        controller: passwordController,decoration: Inputdecoration(labelText: 'Password'),obscureText: true,validator: (value) {
                          if (value.isEmpty) {
                            return 'invalid password';
                          }
                          return null;
                        },SizedBox(height: 30),RaisedButton(
                        child: Text('Submit'),onpressed: () {
                          if (nameController ==  //i am getting a blue underline over here
                                  FirebaseFirestore.instance
                                      .collection("proddecAdmin")
                                      .doc("1")
                                      .set({'Id': ''}) &&
                              passwordController == //i am getting a blue underline over here
                                  FirebaseFirestore.instance
                                      .collection("proddecAdmin")
                                      .doc("1")
                                      .set({
                                    'password': '',})) {
                            Navigator.push(
                              context,MaterialPageRoute(
                                  builder: (context) => ProfilePage()),);
                          }
                        },

解决方法

nameController和密码控制器只是TextEditingController实例。您要与存储在控制器中的值进行比较。例如

nameController.value.text == ''

passwordController.value.text == ''

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。