Pular para o conteúdo principal

extra_positional_arguments_could_be_named

Detalhes sobre o diagnóstico 'extra_positional_arguments_could_be_named' produzido pelo analisador do Dart.

Too many positional arguments: {0} expected, but {1} found.

Descrição

#

O analisador produz este diagnóstico quando uma invocação de método ou função tem mais argumentos posicionais do que o método ou função permite, mas o método ou função define parâmetros nomeados.

Exemplo

#

O código a seguir produz este diagnóstico porque f define 2 parâmetros posicionais, mas tem um parâmetro nomeado que poderia ser usado para o terceiro argumento:

dart
void f(int a, int b, {int? c}) {}
void g() {
  f(1, 2, 3);
}

Correções comuns

#

Se alguns argumentos devem ser valores para parâmetros nomeados, adicione os nomes antes dos argumentos:

dart
void f(int a, int b, {int? c}) {}
void g() {
  f(1, 2, c: 3);
}

Caso contrário, remova os argumentos que não correspondem a parâmetros posicionais:

dart
void f(int a, int b, {int? c}) {}
void g() {
  f(1, 2);
}

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ê.