flutter - 不可为 null 的实例字段 'taskTitle' 必须初始化

标签 flutter dart dart-null-safety

我是 Flutter 开发的新手,在我的代码中为什么会出现此错误(不可为空的实例字段 taskTitle 必须初始化),尽管 初始化实例字段在构造函数

因此,我假设每当创建此类实例时,用户都需要提供两个成员强制项,因此不应发生此错误(尽管如果添加 late 修饰符此错误会消失)。

请解开我的疑惑

class Task {
  String taskTitle;
  bool isDone = false;

  Task(String taskTitle, bool isDone) {
    this.taskTitle = taskTitle;
    this.isDone = isDone;
  }
}

最佳答案

您正在使用 dart null safety 环境,为此,您必须将 taskTitle 变量声明为 nullable 变量(如果可以的话)通过定义为空:

字符串?任务标题;

或者如果它不会为空,那么你可以说:

late String taskTitle;

这意味着稍后您将初始化 taskTitle 变量,它不会为 null。

关于flutter - 不可为 null 的实例字段 'taskTitle' 必须初始化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/68404306/

相关文章:

linux - Flutter Linux 和 MacOS & Web : The provided ScrollController is currently attached to more than one ScrollPosition

android - Flutter 中的 OAuth2 身份验证

android - Firebase Phone Auth 不发送带有代码的短信

unit-testing - `TypeMatcher` 与 `throwsA` 一起使用时不起作用

flutter - 函数 'StreamSink<dynamic>' 无法返回类型为 'assessmentSink' 的值

xml - 使用Dart解码Windows 1255

flutter - 如何使用Flutter华为Push Kit插件获取推送通知点击事件?

flutter - 如何将Future <List <Object >>转换为List <Object>?

flutter - 如何在 flutter 中修复 'Text is null'

flutter - 生成器无法定位尚未迁移到空安全的库