invalid_modifier_on_constructor
修饰符“{0}”不能应用于构造函数的函数体。
说明
#当构造函数的函数体前缀使用了以下修饰符之一时,分析器会产生此诊断信息:async
、async*
或 sync*
。构造函数的函数体必须是同步的。
示例
#以下代码会产生此诊断信息,因为类 C
的构造函数函数体被标记为 async
dart
class C {
C() async {}
}
常见修复方法
#如果构造函数可以是同步的,请移除该修饰符
dart
class C {
C();
}
如果构造函数不能是同步的,请改用静态方法来创建实例
dart
class C {
C();
static Future<C> c() async {
return C();
}
}