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

missing_default_value_for_parameter

パラメータ '{0}' は、その型のために 'null' の値を持つことができませんが、暗黙的なデフォルト値は 'null' です。

null 安全性を使用する場合は、'@required' アノテーションではなく 'required' キーワードを使用してください。

説明

#

アナライザーは、位置指定または名前付きのオプションパラメータが、potentially non-nullable 型を持ち、デフォルト値が指定されていない場合に、この診断を生成します。明示的なデフォルト値を持たないオプションパラメータは、暗黙的なデフォルト値として null を持ちます。パラメータの型がパラメータに null の値を持たせることを許可しない場合、暗黙的なデフォルト値は無効です。

#

以下のコードは、xnull になれないため、この診断を生成します。非 null のデフォルト値は指定されていません。

dart
void f([int x]) {}

これは以下のコードでも同様です。

dart
void g({int x}) {}

一般的な修正

#

値が提供されなかったことを示すために null を使用したい場合は、型を null 許容にする必要があります。

dart
void f([int? x]) {}
void g({int? x}) {}

パラメータが null にできない場合は、デフォルト値を提供するか

dart
void f([int x = 1]) {}
void g({int x = 2}) {}

パラメータを必須パラメータにするかのどちらかを行ってください。

dart
void f(int x) {}
void g({required int x}) {}