prefer_spread_collections
尽可能使用 spread collections。
详情
#尽可能使用 spread collections。
当您想从单个条目创建新集合时,集合字面量非常出色。但是,当现有条目已经存储在另一个集合中时,spread collection 语法会使代码更简洁。
不良示例
dart
Widget build(BuildContext context) {
return CupertinoPageScaffold(
child: ListView(
children: [
Tab2Header(),
]..addAll(buildTab2Conversation()),
),
);
}
dart
var ints = [1, 2, 3];
print(['a']..addAll(ints.map((i) => i.toString()))..addAll(['c']));
dart
var things;
var l = ['a']..addAll(things ?? const []);
良好示例
dart
Widget build(BuildContext context) {
return CupertinoPageScaffold(
child: ListView(
children: [
Tab2Header(),
...buildTab2Conversation(),
],
),
);
}
dart
var ints = [1, 2, 3];
print(['a', ...ints.map((i) => i.toString()), 'c');
dart
var things;
var l = ['a', ...?things];
启用
#要启用 prefer_spread_collections
规则,请在您的 analysis_options.yaml
文件中的 linter > rules 下添加 prefer_spread_collections
analysis_options.yaml
yaml
linter:
rules:
- prefer_spread_collections
如果您改为使用 YAML map 语法来配置 linter 规则,请在 linter > rules 下添加 prefer_spread_collections: true
analysis_options.yaml
yaml
linter:
rules:
prefer_spread_collections: true
除非另有说明,否则本网站上的文档反映的是 Dart 3.7.1 版本。页面上次更新于 2025-03-07。 查看源代码 或 报告问题。