【发布时间】:2025-11-29 21:25:01
【问题描述】:
我正在 Flutter 中编写一个应用程序,并尝试进行 2 页注册过程。第 1 页是他们的电子邮件、密码和重复密码,第 2 页是有关他们帐户的其他详细信息。这是个人项目的一部分。
我正在尝试将数据从第一个注册页面传递到第二个。一旦用户填写第二页并按下注册。然后整理数据并在 Authentication 和 FireStore 数据库中创建 FirebaseUser。
a) 这是正确的做法吗? AKA 将数据从一页传递到另一页。然后完成注册,但如果用户在完成第二页之前存在,那么他们还没有创建帐户。
b) 我是否应该将第二页上的信息添加到第一页上创建的帐户中?对我来说这是有道理的,但我在考虑可用性方面,没有完成完整注册过程的用户可能不希望为他们设置帐户。
我已经尝试了无数关于将数据从一个页面传递到另一个页面的教程,但是我总是遇到与无效的构造函数名称、const 错误相关的错误,或者我陷入了创建新对象和传递事物的兔子洞。
Signup.dart (第1页)
try {
await FirebaseAuth.instance.createUserWithEmailAndPassword(email: _email, password: _password)
.then((user) => {
Firestore.instance.collection('users').document(user.user.uid).setData({"email": _email, "password": _password}),
});
Navigator.pushReplacement(context, MaterialPageRoute(builder: (context) => ExtraSignUpInfo()));
ExtraSignUpInfo.dart(第 2 页)
class ExtraSignUpInfo extends StatefulWidget {
@override
_ExtraSignUpInfoState createState() => _ExtraSignUpInfoState();
}
class _ExtraSignUpInfoState extends State<ExtraSignUpInfo> {
String _name;
String _company;
String _jobTitle;
String _teamName;
String _industry;
final GlobalKey<FormState> _formKey = GlobalKey<FormState>();
@override
Widget build(BuildContext context) {
我希望将刚刚创建的用户发送到 ExtraSignUpInfo() 页面,以便稍后在填写 ExtraSignUpInfo() 页面表单字段后创建电子邮件和密码。
【问题讨论】:
标签: android ios firebase flutter