跳到主要内容

field_initializer_outside_constructor

字段形式参数只能在构造函数中使用。

初始化形式参数只能在构造函数中使用。

描述

#

当在非构造函数的参数列表中使用初始化形式参数时,分析器会生成此诊断信息。

示例

#

以下代码会生成此诊断信息,因为初始化形式参数 this.x 在方法 m 中使用

dart
class A {
  int x = 0;

  m([this.x = 0]) {}
}

常见修复

#

将初始化形式参数替换为普通参数,并在方法体内部为字段赋值

dart
class A {
  int x = 0;

  m([int x = 0]) {
    this.x = x;
  }
}