跳到主要内容

assignment_to_final

'{0}' 不能用作设置器,因为它是 final 的。

描述

#

分析器会在找到一个设置器调用时产生此诊断,但由于同名字段被声明为 finalconst,所以没有设置器。

示例

#

以下代码会产生此诊断,因为 v 是 final 的

dart
class C {
  final v = 0;
}

f(C c) {
  c.v = 1;
}

常见修复方法

#

如果你需要能够设置该字段的值,则移除字段上的 final 修饰符

dart
class C {
  int v = 0;
}

f(C c) {
  c.v = 1;
}