目录

avoid_function_literals_in_foreach_calls

避免将 forEach 与函数字面量一起使用。

此规则自 Dart 2.0 起可用。

规则集:推荐flutter

此规则有快速修复可用。

详情

#

避免forEach 与函数字面量一起使用。

for 循环使开发人员能够清楚明确地表达其意图。for 循环体中的 return 会从函数体返回,而 forEach 闭包体中的 return 仅返回该次 forEach 迭代的值。for 循环体可以包含 await,而 forEach 的闭包体不能。

错误

dart
people.forEach((person) {
  ...
});

正确

dart
for (var person in people) {
  ...
}

用法

#

要启用 avoid_function_literals_in_foreach_calls 规则,请在 analysis_options.yaml 文件中的 linter > rules 下添加 avoid_function_literals_in_foreach_calls

analysis_options.yaml
yaml
linter:
  rules:
    - avoid_function_literals_in_foreach_calls