undefined_ prefixed_ name_ write
Detalhes sobre o diagnóstico 'undefined_prefixed_name_write' produzido pelo analisador do Dart.
The constant '{0}' imported with the prefix '{1}' can't be assigned to.
The name '{0}' is declared in '{1}', but private names are visible only in their own library.
The setter '{0}' isn't defined in the libraries imported with the prefix '{1}'.
The variable '{0}' imported with the prefix '{1}' is final, so it can't be assigned to.
The {0} '{1}' imported with the prefix '{2}' can't be assigned to.
There's a getter '{0}' in the libraries imported with the prefix '{1}', but no setter.
Descrição
#O analisador emite este diagnóstico quando um valor é atribuído a um nome por meio de um prefixo de import, mas nenhuma das bibliotecas importadas com esse prefixo possui um setter ou uma variável não final com esse nome.
Exemplos
#
O código a seguir produz este diagnóstico porque dart:core não define nada
chamado a:
import 'dart:core' as p;
void f() {
p.a = 0;
}
Dado um arquivo a.dart que contém:
int get x => 0;
O código a seguir produz este diagnóstico porque a.dart tem apenas um
getter chamado x:
import 'a.dart' as p;
void f() {
p.x = 0;
}
O código a seguir produz este diagnóstico porque pi é uma constante:
import 'dart:math' as p;
void f() {
p.pi = 0;
}
Correções comuns
#Se a biblioteca em que o setter é declarado ainda não foi importada, importe-a com o prefixo.
Se o nome estiver errado, troque-o pelo nome de um setter ou variável declarado nas bibliotecas importadas.
Se a biblioteca tiver apenas um getter, adicione a ela um setter com o mesmo nome. Se a variável for final, torne-a não final.
Caso contrário, remova a atribuição.
Salvo indicação em contrário, a documentação neste site reflete Dart 3.13.7. Relatar um problema.
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ê.