跳到主要内容

avoid_function_literals_in_foreach_calls

稳定
推荐
修复可用

避免对 forEach 使用函数字面量。

详情

#

避免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

如果您改为使用 YAML 映射语法来配置 linter 规则,请在 linter > rules 下添加 avoid_function_literals_in_foreach_calls: true

analysis_options.yaml
yaml
linter:
  rules:
    avoid_function_literals_in_foreach_calls: true