我有个问题。我正在使用Flutter 3开发一个应用程序,我必须知道我的TextField是否返回了用户条目。一方面,我有这个功能来测试预定义用户的登录。此处提供打印以验证用户条目。登录工作正常,但打印内容为空。这个包含在一个名为"的无状态类中;登录页面";。
void loginToFirebase() {
print(FormSection().emailField.text.trim());
print(FormSection().passwordField.text.trim());
try {
auth
.signInWithEmailAndPassword(
email: 'xxxx@xxxx.com',
password: 'motdepasse')
.then((value) {
print(value.toString());
});
} catch (e) {
print(e.toString());
}
}
在第二面,我有两个TextField(电子邮件和密码的结构相同,只有控制器变量在更改(。这个包含在一个名为"的无状态类中;FormSection";。
Container(
margin: EdgeInsets.only(left: 10),
height: 60,
width: 230,
child: Center(
child: TextField(
controller: passwordField,
textAlign: TextAlign.center,
obscureText: true,
style: GoogleFonts.comfortaa(
fontSize: 20,
color: Colors.white,
fontWeight: FontWeight.bold),
decoration: InputDecoration(
hintText: 'Mot de passe',
hintStyle: GoogleFonts.comfortaa(
color: Colors.white.withOpacity(0.5)),
border: InputBorder.none),
)),
)
当我按下ElevatedButton(我的连接按钮(时,我可以登录,一切正常,但Controller.text为空。
有人有解决方案吗?感谢您花时间阅读我的问题并回答。
我正在尝试调用用户文本输入来验证要与我的数据库进行比较的帐户。
您的两个控制器是emailField和passwordField。如果你正确登录,它们当然不是空的。我看不到任何第三个控制器叫controller(我想你不能这么叫它(,也不能叫它TextEditingController,因为这是类名。
您命名的控制器是emailField和passwordField:您可以通过调用emailField.text和passwordField.text.从它们获得文本
如果我遗漏了什么,请详细说明你的代码。