メインコンテンツにスキップ

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 > rulesの下にavoid_function_literals_in_foreach_calls: trueを追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    avoid_function_literals_in_foreach_calls: true