跳到主要内容

non_final_field_in_enum

枚举只能声明 final 字段。

描述

#

当枚举中的实例字段未被标记为 final 时,分析器会产生此诊断。

示例

#

以下代码会产生此诊断,因为字段 f 不是 final 字段

dart
enum E {
  c;

  int f = 0;
}

常见修复方法

#

如果该字段必须在枚举中定义,则将其标记为 final

dart
enum E {
  c;

  final int f = 0;
}

如果该字段可以移除,则将其移除

dart
enum E {
  c
}