无法使用Navigator.push()从用电子邮件和密码登录的登录窗口导航到Flutter中的其他窗口。
无法使用Navigator.push()从用电子邮件和密码登录的登录窗口导航到Flutter中的其他窗口。
这个问题已经有了答案:
没有创建Firebase应用程序\'[DEFAULT]\' - 在Flutter和Firebase中调用Firebase.initializeApp()
我想从登录界面访问主页,但当我试图用现有帐户登录时,按钮不起作用,窗口保持不变。
import 'package:finalproject/Pages/home.dart'; import 'package:flutter/material.dart'; import 'package:firebase_auth/firebase_auth.dart'; class LoginPage extends StatefulWidget { @override _LoginPageState createState() => new _LoginPageState(); } class _LoginPageState extends State { final GlobalKey _formKey = GlobalKey(); String _email, _password; @override Widget build(BuildContext context) { return new Scaffold( appBar: new AppBar( title: Text('Sign in'), ), body: Form( key: _formKey, child: Column( children: [ TextFormField( validator: (input) { if (input.isEmpty) { return ' Write your email'; } return null; }, onSaved: (input) => _email = input, decoration: InputDecoration(labelText: ' Email'), ), TextFormField( validator: (input) { if (input.length < 6) { return ' Write your password'; } return null; }, onSaved: (input) => _password = input, decoration: InputDecoration(labelText: ' Password'), obscureText: true, ), RaisedButton( onPressed: signIn, child: Text('Sign in'), ),],),),);} void signIn() async { if (_formKey.currentState.validate()) { _formKey.currentState.save(); try { // ignore: deprecated_member_use UserCredential authResult = await FirebaseAuth.instance .signInWithEmailAndPassword(email: _email, password: _password); final User user = authResult.user; Navigator.push( context, MaterialPageRoute(builder: (context) => Home()), ); } catch (e) { print(e.message); }}}}
此外,在我按下“登录”按钮后,我总是会收到这个消息。
I/flutter ( 3130): No Firebase App \'[DEFAULT]\' has been created - call Firebase.initializeApp()
也许这就是原因?
admin 更改状态以发布 2023年5月23日