首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >带火源的Erro

带火源的Erro
EN

Stack Overflow用户
提问于 2021-01-31 02:37:45
回答 1查看 38关注 0票数 0

我是新来的。我试图与firebase连接,在屏幕登录中进行验证、电子邮件和密码。

代码:

代码语言:javascript
复制
import 'package:flutter/cupertino.dart';
import 'package:flutter/material.dart';
import 'package:login/page.dart';
import 'package:login/register_page.dart';
import 'package:firebase_auth/firebase_auth.dart';

import 'forgivePassword.dart';

class MyApp extends StatefulWidget {
  @override
  _MyAppState createState() => _MyAppState();
}

class _MyAppState extends State<MyApp> {
  String _email, _password;
  final GlobalKey<FormState> _formKey = GlobalKey<FormState>();


  @override
  Widget build(BuildContext context) {
    return Scaffold(
      backgroundColor: Colors.blue,
      body: Center(
        child: SizedBox(
          width: 380,
          height: 400,
          child: Form(
            key: _formKey,
            child: Card(
              shape: RoundedRectangleBorder(
                borderRadius: BorderRadius.circular(20.0)
              ),
              child: Column(
                mainAxisAlignment: MainAxisAlignment.center,
                children: [
                  Container(
                    padding: EdgeInsets.only(top: 10.0),
                  ),
                  Container(
                    padding: EdgeInsets.fromLTRB(50.0, 1.0, 50.0, 1.0),
                    child: TextFormField(
                      validator: (input){
                        if(input.isEmpty){
                          return ;
                        }
                      },
                      onSaved: (input) => _email = input,
                      keyboardType: TextInputType.emailAddress,
                      decoration: InputDecoration(
                        labelText: "E-mail",
                        border: OutlineInputBorder(
                          borderRadius: BorderRadius.all(Radius.circular(20.0))
                        )
                      ),
                    ),
                  ),

                  Container(
                    padding: EdgeInsets.only(top: 10.0),
                  ),
                  Container(
                    padding: EdgeInsets.fromLTRB(50.0, 1.0, 50.0, 0.0),
                    child: TextFormField(
                      validator: (input){
                        if(input.length < 6){
                          return 'Your password needs to be atleast 6 characters';
                        }
                      },
                      onSaved: (input) => _password = input,
                      obscureText: true,
                      decoration: const InputDecoration(
                          labelText: "Password",
                          border: OutlineInputBorder(
                              borderRadius: BorderRadius.all(Radius.circular(20.0)))),
                      keyboardType: TextInputType.emailAddress,
                    ),
                  ),
                  Row(
                    children: [
                      Padding(
                        padding: const EdgeInsets.fromLTRB(178, 0, 0, 0),
                        child: TextButton(
                            onPressed: () {
                              Navigator.push(
                                  context,
                                  MaterialPageRoute(
                                      builder: (BuildContext context) =>
                                          ForgivePassword()));
                            },
                            child: Text(
                              "Esqueci minha senha",
                              style: TextStyle(
                                color: Colors.blue,
                                decoration: TextDecoration.underline,
                              ),
                            )),
                      )
                    ],
                  ),
                  SizedBox(
                      width: 310,
                      height: 35,
                      child: RaisedButton(
                        color: Colors.blue,
                        textColor: Colors.white,
                        shape: RoundedRectangleBorder(
                          borderRadius: BorderRadius.circular(20.0),
                        ),
                        onPressed: sigIn,
                        child: Text("Login"),
                      )),
                  Padding(
                    padding: const EdgeInsets.only(top: 15.0),
                    child: SizedBox(
                        width: 310,
                        height: 35,
                        child: RaisedButton(
                          color: Colors.blue,
                          textColor: Colors.white,
                          shape: RoundedRectangleBorder(
                            borderRadius: BorderRadius.circular(20.0),
                          ),
                          onPressed: () {
                            Navigator.push(
                                context,
                                MaterialPageRoute(
                                    builder: (BuildContext context) =>
                                        PaginaRegistro()));
                          },
                          child: Text("Registre-se"),
                        )),
                  ),
                ],
              ),
            ),
          ),
        ),
      ),
    );
  }
  Future<void> sigIn() async{
    final formState = _formKey.currentState;
    if(formState.validate()){
      try{
        UserCredential user =  await FirebaseAuth.
        instance.signInWithEmailAndPassword(email: _email, password: _password);
        Navigator.push(context, MaterialPageRoute(builder: (context) => Home()));
      }catch(e){
        print(e.massage);
      }
    }
  }
}

Err:

进行热重启..。将文件同步到IA模拟器上的设备AOSP .在925 in中重新启动应用程序。E/flutter ( 4428):错误:flutter/lib/ui/ui_dart_state.cc(186)未处理异常: NoSuchMethodError:类'FirebaseException‘没有实例getter’FirebaseException‘。E/颤振( 4428):接收器:'FirebaseException‘E/颤振( 4428):尝试呼叫:推拿E/颤振( 4428):#0 Object.noSuchMethod (飞镖:核心补丁/对象_patch.dart:54:5)E/颤振( 4428):#1

(软件包:login/login_page.dart:149:17)E/ (package:flutter/src/gestures/recognizer.dart:182:24) ( 4428):#2 _InkResponseState._handleTap _InkResponseState._handleTap E/颤振(44 28):#3 GestureRecognizer.invokeCallback (package:flutter/src/gestures/tap.dart:598:11) E/颤振(44 28):#4 TapGestureRecognizer.handleTapUp (package:flutter/src/gestures/tap.dart:598:11)E/颤振(4 428):#5

BaseTapGestureRecognizer._checkUp (包装:颤振/src/手势/达帕:287:5)E/颤振( 4428):#6

BaseTapGestureRecognizer.handlePrimaryPointer (包装:颤振/src/手势/达普:222:7)E/颤振( 4428):#7

(package:flutter/src/gestures/recognizer.dart:475:9) E/颤振( 4428):#8 PointerRouter._dispatch (package:flutter/src/gestures/pointer_router.dart:93:12) E/ PrimaryPointerGestureRecognizer.handleEvent ( 4428):#9 PointerRouter._dispatchEventToRoutes。(package:flutter/src/gestures/pointer_router.dart:138:9) E/颤振( 4428):#10 _LinkedHashMapMixin.forEach (dart:collection-patch/compact_hash.dart:397:8) E/颤振( 4428):#11 PointerRouter._dispatchEventToRoutes (package:flutter/src/gestures/pointer_router.dart:136:18) E/颤振( 4428):#12 PointerRouter.route (package:flutter/src/gestures/pointer_router.dart:122:7) E(package:flutter/src/gestures/binding.dart:381:19) E/颤振(44 28):#14 GestureBinding.dispatchEvent (package:flutter/src/gestures/binding.dart:361:22) E/颤振(44 28):#15 RendererBinding.dispatchEvent (package:flutter/src/rendering/binding.dart:278:11) E/颤振(44 28):#16 GestureBinding._handlePointerEventImmediately (包装:颤振/src/手势/)E/颤振( 4428):#17 (package:flutter/src/gestures/binding.dart:280:5) E/颤振(44 28):#18 GestureBinding._flushPointerEventQueue (package:flutter/src/gestures/binding.dart:238:7) E/颤振(44 28):#19 GestureBinding._handlePointerDataPacket (package:flutter/src/gestures/binding.dart:221:7) E/颤振(4 428):#20 _rootRunUnary(飞镖:1202:13)E/颤振( 4428):#21 _CustomZone.runUnary (飞镖:异步/zone.dart:1097:19)E/zone.dart:#22 _CustomZone.runUnaryGuarded (飞镖:异步/zone.dart:1002:7)E/颤振( 4428):#23 _invoke1 (飞镖:ui/hooks.dart:176:10)E/_invoke1

PlatformDispatcher._dispatchPointerDataPacket (dart:ui/platform_Dispatcher.DAT:276:7)E/颤振( 4428):#25

_dispatchPointerDataPacket (飞镖:ui/Hooks.DAT:96:31)E/颤振( 4428):

EN

回答 1

Stack Overflow用户

发布于 2021-01-31 16:10:46

你打错了。在打印语句中使用"print(e.message);“而不是"print(e.massage);”:

代码语言:javascript
复制
catch(e){
        print(e.message);
      }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/65975252

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档