await_in_late_local_variable_initializer
“await”表达式不能用于“late”局部变量的初始化器。
描述
#当带有 late
修饰符的局部变量在初始化器中使用 await
表达式时,分析器会产生此诊断。
示例
#以下代码会产生此诊断,因为它在局部变量 v
的初始化器中使用了 await
表达式,而 v
被标记为 late
:
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;
}