invalid_ visible_ outside_ template_ annotation
Detalhes sobre o diagnóstico 'invalid_visible_outside_template_annotation' produzido pelo analisador do Dart.
The annotation 'visibleOutsideTemplate' can only be applied to a member of a class, enum, or mixin that is annotated with 'visibleForTemplate'.
Descrição
#
O analisador gera este diagnóstico quando a anotação @visibleOutsideTemplate é usada de forma incorreta. Essa anotação só deve ser aplicada a membros de uma classe, enum ou mixin que tenha a anotação
@visibleForTemplate, para que esses membros fiquem fora das restrições de visibilidade que
@visibleForTemplate impõe.
Exemplos
#
O código a seguir gera este diagnóstico porque não há uma anotação @visibleForTemplate no nível da classe:
import 'package:angular_meta/angular_meta.dart';
class C {
@visibleOutsideTemplate
int m() {
return 1;
}
}
O código a seguir gera este diagnóstico porque a anotação está em uma declaração de classe, e não em um membro de uma classe, enum ou mixin:
import 'package:angular_meta/angular_meta.dart';
@visibleOutsideTemplate
class C {}
Correções comuns
#
Se a classe só fica visível para que templates possam referenciá-la, então adicione a anotação @visibleForTemplate
à classe:
import 'package:angular_meta/angular_meta.dart';
@visibleForTemplate
class C {
@visibleOutsideTemplate
int m() {
return 1;
}
}
Se a anotação @visibleOutsideTemplate estiver em algo diferente de um membro de uma classe, enum ou mixin com a anotação
@visibleForTemplate, remova a anotação:
class C {}
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ê.