Pular para o conteúdo principal

prefer_for_elements_to_map_fromIterable

Saiba mais sobre a regra de lint prefer_for_elements_to_map_fromIterable.

Estável
Recomendado
Correção disponível
Lançado no Dart 2.3

Prefira elementos for ao construir mapas a partir de iteráveis.

Detalhes

#

Ao construir mapas a partir de iteráveis, é preferível usar elementos for.

Usar elementos 'for' traz vários benefícios, incluindo:

  • Desempenho
  • Flexibilidade
  • Legibilidade
  • Inferência de tipos aprimorada
  • Melhor interação com null safety

RUIM:

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

BOM:

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

BOM:

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,
};

Ativar

#

Para ativar a regra prefer_for_elements_to_map_fromIterable, adicione prefer_for_elements_to_map_fromIterable em linter > rules no seu arquivo analysis_options.yaml:

analysis_options.yaml
yaml
linter:
  rules:
    - prefer_for_elements_to_map_fromIterable

Se você usa a sintaxe de mapa YAML para configurar as regras de lint, adicione prefer_for_elements_to_map_fromIterable: true em linter > rules:

analysis_options.yaml
yaml
linter:
  rules:
    prefer_for_elements_to_map_fromIterable: true

Encontrou essa página sem tradução ou que precisa de correção? Abra uma issue e nos ajude a manter esse site em PT-BR para ajudar pessoas como você.