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

未定義_名前付き_パラメータ

名前付きパラメータ '{0}' は定義されていません。

説明

#

メソッドまたは関数呼び出しに名前付き引数があるが、呼び出されるメソッドまたは関数が同じ名前のパラメータを定義していない場合に、アナライザーはこの診断を生成します。

#

以下のコードは、ma という名前の名前付きパラメータを宣言していないため、この診断を生成します。

dart
class C {
  m({int? b}) {}
}

void f(C c) {
  c.m(a: 1);
}

一般的な修正

#

引数名がタイプミスである場合は、正しい名前に置き換えてください。上記の例は、ab に変更することで修正できます。

dart
class C {
  m({int? b}) {}
}

void f(C c) {
  c.m(b: 1);
}

サブクラスが問題の名前のパラメータを追加する場合は、レシーバーをサブクラスにキャストしてください。

dart
class C {
  m({int? b}) {}
}

class D extends C {
  m({int? a, int? b}) {}
}

void f(C c) {
  (c as D).m(a: 1);
}

パラメータを関数に追加する必要がある場合は、追加してください。

dart
class C {
  m({int? a, int? b}) {}
}

void f(C c) {
  c.m(a: 1);
}