メインコンテンツにスキップ

const_constructor_with_field_initialized_by_non_const

フィールド '{0}' が定数ではない値で初期化されているため、'const' コンストラクタを定義できません。

説明

#

クラス内のフィールドが定数ではない値で初期化されているにもかかわらず、コンストラクタに const キーワードが付いている場合に、アナライザーはこの診断を生成します。

#

フィールド s が定数ではない値で初期化されているため、以下のコードはこの診断を生成します。

dart
String x = '3';
class C {
  final String s = x;
  const C();
}

一般的な修正

#

フィールドが定数値で初期化できる場合は、初期化子を定数式に変更してください。

dart
class C {
  final String s = '3';
  const C();
}

フィールドが定数値で初期化できない場合は、コンストラクタから const キーワードを削除してください。

dart
String x = '3';
class C {
  final String s = x;
  C();
}