avoid_field_initializers_in_const_classes
避免在 const 类中使用字段初始化器。
详情
#避免在 const 类中使用字段初始化器。
与其使用 final x = const expr;
,不如写成 get x => const expr;
,这样可以避免分配无用的字段。截至 2018 年 4 月,这对于 VM 是成立的,但对于编译成 JS 的代码则不然。
不好
dart
class A {
final a = const [];
const A();
}
好
dart
class A {
get a => const [];
const A();
}
启用
#要启用 avoid_field_initializers_in_const_classes
规则,请在您的 analysis_options.yaml
文件中的 linter > rules 下添加 avoid_field_initializers_in_const_classes
analysis_options.yaml
yaml
linter:
rules:
- avoid_field_initializers_in_const_classes
如果您使用 YAML 映射语法配置 linter 规则,请在 linter > rules 下添加 avoid_field_initializers_in_const_classes: true
analysis_options.yaml
yaml
linter:
rules:
avoid_field_initializers_in_const_classes: true