跳到主要内容

unnecessary_lambdas

闭包应为 tear-off。

描述

#

当闭包 (lambda) 可以替换为 tear-off 时,分析器会生成此诊断。

示例

#

以下代码生成此诊断,因为传递给 forEach 的闭包只包含对函数 print 的调用,并使用了闭包的参数

dart
void f(List<String> strings) {
  strings.forEach((string) {
    print(string);
  });
}

常见修复

#

将闭包替换为使用该闭包调用的函数或方法的 tear-off

dart
void f(List<String> strings) {
  strings.forEach(print);
}