跳到主要内容

prefer_inlined_adds

可以将列表项的添加操作内联。

可以将多个列表项的添加操作内联。

描述

#

当在列表字面量上调用 addaddAll 方法,并且被添加的元素可以直接包含在列表字面量中时,分析器会产生此诊断消息。

示例

#

以下代码会产生此诊断消息,因为正在使用 add 方法添加 b,而它可以直接包含在列表字面量中

dart
List<String> f(String a, String b) {
  return [a]..add(b);
}

以下代码会产生此诊断消息,因为正在使用 addAll 方法添加 b 的元素,而这些元素可以直接包含在列表字面量中

dart
List<String> f(String a, List<String> b) {
  return [a]..addAll(b);
}

常见修复方法

#

如果使用了 add 方法,则将参数作为列表的一个元素,并移除该调用。

dart
List<String> f(String a, String b) {
  return [a, b];
}

如果使用了 addAll 方法,则对参数使用展开运算符(spread operator)将其元素添加到列表中,并移除该调用。

dart
List<String> f(String a, List<String> b) {
  return [a, ...b];
}