Pular para o conteúdo principal

extension_override_argument_not_assignable

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

The type of the argument to the extension override '{0}' isn't assignable to the extended type '{1}'.

Descrição

#

O analisador produz este diagnóstico quando o argumento de um override de extensão não é atribuível ao tipo estendido pela extensão.

Exemplo

#

O código a seguir produz este diagnóstico porque 3 não é uma String:

dart
extension E on String {
  void method() {}
}
​
void f() {
  E(3).method();
}

Correções comuns

#

Se você estiver usando a extensão correta, atualize o argumento para que ele tenha o tipo correto:

dart
extension E on String {
  void method() {}
}
​
void f() {
  E(3.toString()).method();
}

Se houver outra extensão válida para o tipo do argumento, substitua o nome da extensão ou desembrulhe o argumento para que a extensão correta seja encontrada.

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