我刚刚升级了我的Flutter SDK,但我仍然无法使用增强的枚举。
$ dart --version
打印
Dart SDK version: 2.18.0-109.0.dev
这是我的代码:
enum Foo {
bar(0),
baz(1),
final int i;
const Foo(this.i);
}
得到以下错误:
这需要启用'enhanced-enum '语言特性。
期望找到'}'.
这里有两个问题。
-
在
pubspec.yaml
文件中更新Dart SDK版本约束以使用新的Dart2.17.0
版本environment: sdk: ">=2.17.0 <3.0.0"
然后执行
flutter pub get
命令 -
必须以分号
;
结尾,不能以逗号,
结尾enum Foo { bar(0), baz(1); // <-- Replaced "," with ";" final int i; const Foo(this.i); }