Pular para o conteúdo principal

const_constructor_param_type_mismatch

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

A value of type '{0}' can't be assigned to a parameter of type '{1}' in a const constructor.

Descrição

#

O analisador emite este diagnóstico quando o tipo de tempo de execução de um valor constante não pode ser atribuído ao tipo estático de um parâmetro de um construtor constante.

Exemplo

#

O código a seguir produz este diagnóstico porque o tipo de tempo de execução de i é int, que não pode ser atribuído ao tipo estático de s:

dart
class C {
  final String s;
​
  const C(this.s);
}
​
const dynamic i = 0;
​
void f() {
  const C(i);
}

Correções comuns

#

Passe um valor do tipo correto para o construtor:

dart
class C {
  final String s;
​
  const C(this.s);
}
​
const dynamic i = 0;
​
void f() {
  const C('$i');
}

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