【问题标题】:How to fix error: A value of type 'User?' can't be assigned to a variable of type 'User'如何修复错误:“用户”类型的值?不能分配给“用户”类型的变量
【发布时间】:2021-08-20 08:06:19
【问题描述】:

我是应用程序开发的初学者,遇到了这个错误。 我得到的错误是“错误:'用户类型的值?'不能分配给“用户”类型的变量。”

我的代码:

Future signUpWithEmailAndPassword( String email, String password) async {
    try {
      UserCredential result = await _auth.createUserWithEmailAndPassword(email: email, password: password);
      User user = result.user;
      return _userFromFirebaseUser(user);
    } catch(e){
      print(e.toString());
      return null;
    }
  }

【问题讨论】:

    标签: firebase flutter dart firebase-authentication


    【解决方案1】:

    换行

    User user = result.user;
    

    User? user = result.user;
    

    【讨论】:

      【解决方案2】:

      您实际上可以使用! 修复该错误。但请确保result.user 不为空!

      User user = result.user!;
      

      【讨论】:

      • 没错:User? 中的? 表示该值可能为空,因此确保定义用户可以解决问题
      【解决方案3】:

      这对我有用:

      1. 右击出错的行

      2.点击更多选项

      3.点击添加演员表

      观看 this 将 Firebase 与 Flutter 应用连接的教程

      【讨论】:

        猜你喜欢
        • 2022-01-16
        • 2019-03-16
        • 2020-11-25
        • 2020-02-11
        • 1970-01-01
        • 1970-01-01
        • 2020-07-13
        • 2020-07-02
        • 2021-03-28
        相关资源
        最近更新 更多