argument_type_not_assignable
型 '{0}' の引数は、型 '{1}' のパラメータに代入できません。 {2}
説明
#静的な引数の型が、対応するパラメータの静的な型に代入できない場合に、アナライザーはこの診断を生成します。
例
#次のコードは、num が String に代入できないため、この診断を生成します。
dart
String f(String x) => x;
String g(num y) => f(y);一般的な修正
#可能な場合は、静的な型が代入可能になるようにコードを書き直してください。上記の例では、パラメータ y の型を変更できる場合があります。
dart
String f(String x) => x;
String g(String y) => f(y);その修正が不可能な場合は、引数の値が必要な型でない場合を処理するコードを追加してください。1つのアプローチは、他の型を必要な型に強制することです。
dart
String f(String x) => x;
String g(num y) => f(y.toString());別のアプローチは、明示的な型テストとフォールバックコードを追加することです。
dart
String f(String x) => x;
String g(Object y) => f(y is String ? y : '');引数の実行時型が常にパラメータの静的型と同じであり、間違っている場合に実行時に例外がスローされるリスクを許容できる場合は、明示的なキャストを追加してください。
dart
String f(String x) => x;
String g(num y) => f(y as String);