invalid_visible_outside_template_annotation
注解 'visibleOutsideTemplate' 只能应用于已使用 'visibleForTemplate' 注解标注的类、枚举或混入的成员。
描述
#当错误使用 @visibleOutsideTemplate
注解时,分析器会产生此诊断信息。此注解仅用于标注已带有 @visibleForTemplate
注解的类、枚举或混入的成员,以使这些成员不受 @visibleForTemplate
施加的可见性限制。
示例
#以下代码产生此诊断信息,因为类级别没有 @visibleForTemplate
注解
dart
import 'package:angular_meta/angular_meta.dart';
class C {
@visibleOutsideTemplate
int m() {
return 1;
}
}
以下代码产生此诊断信息,因为注解位于类声明上,而不是类、枚举或混入的成员上
dart
import 'package:angular_meta/angular_meta.dart';
@visibleOutsideTemplate
class C {}
常见修复方法
#如果类仅是为了模板能够引用它而可见,则将 @visibleForTemplate
注解添加到该类
dart
import 'package:angular_meta/angular_meta.dart';
@visibleForTemplate
class C {
@visibleOutsideTemplate
int m() {
return 1;
}
}
如果 @visibleOutsideTemplate
注解位于未带有 @visibleForTemplate
注解的类、枚举或混入的成员之外的任何位置,请移除该注解
dart
class C {}