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

late ローカル変数の初期化子での await

「late」修飾子のローカル変数の初期化子では、「await」式を使用できません。

説明

#

この診断は、late 修飾子を持つローカル変数が、初期化子で await 式を使用している場合にアナライザーによって生成されます。

#

以下のコードは、late としてマークされたローカル変数 v の初期化子で await 式が使用されているため、この診断を生成します。

dart
Future<int> f() async {
  late var v = await 42;
  return v;
}

一般的な修正

#

初期化子を await を使用しないように書き換えることができる場合は、書き換えてください。

dart
Future<int> f() async {
  late var v = 42;
  return v;
}

初期化子を書き換えることができない場合は、late 修飾子を削除してください。

dart
Future<int> f() async {
  var v = await 42;
  return v;
}