undefined_ static_ member_ write
Detalhes sobre o diagnóstico 'undefined_static_member_write' produzido pelo analisador do Dart.
The constant '{0}' in the {1} '{2}' can't be assigned to.
The function type '{0}' doesn't have a static setter named '{1}'.
The member '{0}' is declared in '{1}', but private names are visible only in their own library.
The static field '{0}' in the {1} '{2}' is final, so it can't be assigned to.
The {0} '{1}' doesn't have a static setter named '{2}'.
The {0} '{1}' in the {2} '{3}' can't be assigned to.
There's a static getter '{0}' in the {1} '{2}', but no setter.
Descrição
#O analisador emite este diagnóstico quando um valor é atribuído a um membro estático de uma classe, enum, mixin, extension type ou extensão, mas a declaração não possui um setter ou campo estático não final acessível com esse nome.
Exemplos
#
O código a seguir produz este diagnóstico porque a classe C não declara um
setter estático chamado b:
class C {
static int a = 0;
}
void f() {
C.b = 1;
}
O código a seguir produz este diagnóstico porque o campo estático a é
final:
class C {
static final int a = 0;
}
void f() {
C.a = 1;
}
Correções comuns
#Se você pretendia atribuir outro membro estático, use o nome dele:
class C {
static int a = 0;
}
void f() {
C.a = 1;
}
Se o setter não estiver declarado, declare-o ou 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ê.