コンテンツ

prefer_for_elements_to_map_fromIterable

コンテンツ

Iterable から Map を構築する場合、for 要素を使用することを推奨します。

このルールは Dart 2.3 以降で使用可能です。

ルールセット: 推奨flutter

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

詳細

#

Iterable から Map を構築する場合、for 要素を使用することが推奨されます。

for 要素を使用すると、次のようなメリットがあります。

  • パフォーマンス
  • 柔軟性
  • 可読性
  • 型推論の改善
  • Null 安全性との相互作用の改善

悪い例

dart
Map<String, WidgetBuilder>.fromIterable(
  kAllGalleryDemos,
  key: (demo) => '${demo.routeName}',
  value: (demo) => demo.buildRoute,
);

良い例

dart
return {
  for (var demo in kAllGalleryDemos)
    '${demo.routeName}': demo.buildRoute,
};

良い例

dart
// Map<int, Student> is not required, type is inferred automatically.
final pizzaRecipients = {
  ...studentLeaders,
  for (var student in classG)
    if (student.isPassing) student.id: student,
};

使用法

#

prefer_for_elements_to_map_fromIterable ルールを有効にするには、analysis_options.yaml ファイルの linter > rulesprefer_for_elements_to_map_fromIterable を追加してください。

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_for_elements_to_map_fromIterable