目次

avoid_function_literals_in_foreach_calls

関数リテラルを使ったforEachの使用を避けてください。

このルールはDart 2.0から利用可能です。

ルールセット:推奨Flutter

このルールにはクイックフィックスが用意されています。

詳細

#

避けるべきforEachと関数リテラルの組み合わせ。

forループを使用すると、開発者は意図を明確かつ明示的に記述できます。forループの本体内のreturn文は関数の本体から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