avoid_ as
Saiba mais sobre a regra de lint avoid_as.
Evite usar as.
Detalhes
#NOTA: Esta regra foi removida do SDK no Dart 3; ela não funciona mais. Seu conselho é específico do compilador e, com null safety, está em grande parte obsoleto.
EVITE usar as.
Se você sabe que o tipo está correto, use uma asserção ou atribua a uma variável
com tipo mais restrito (isso evita a verificação de tipo no modo release; as
não é removido no modo release). Se você não sabe se o tipo está correto,
verifique com is (isso evita a exceção que as lança).
RUIM:
(pm as Person).firstName = 'Seth';
BOM:
if (pm is Person)
pm.firstName = 'Seth';
mas certamente não
RUIM:
try {
(pm as Person).firstName = 'Seth';
} on CastError { }
Observe que existe uma exceção no caso de dynamic, já que o cast não tem
impacto no desempenho.
OK:
HasScrollDirection scrollable = renderObject as dynamic;
Ativar
#
Para ativar a regra avoid_as, adicione avoid_as em
linter > rules no seu arquivo analysis_options.yaml:
linter:
rules:
- avoid_as
Se você usa a sintaxe de mapa YAML para configurar as regras de lint,
adicione avoid_as: true em linter > rules:
linter:
rules:
avoid_as: true
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ê.