정의되지 않은 애노테이션
정의되지 않은 애노테이션
Dart 분석기가 내보내는 진단 중 하나인 undefined_annotation을 살펴볼게요. 이미 정의되어 있는 이름만 애노테이션(@...)으로 쓸 수 있는데, 정의되지 않은 이름을 애노테이션 자리에 사용하면 이 진단이 나타나요. 이름이 선언되어 있지 않은지, 아니면 오타인지에 따라 해결 방법이 달라져요.
본문
이 진단은 다음과 같은 메시지로 나타나요.
- Undefined name '{0}' used as an annotation. (정의되지 않은 이름 '{0}'이(가) 애노테이션으로 사용되었어요.)
설명
분석기는 정의되지 않은 이름이 애노테이션으로 사용될 때 이 진단을 내보내요.
예시
아래 코드는 undefined라는 이름이 정의되어 있지 않기 때문에 이 진단이 발생해요.
@undefined
void f() {}
자주 쓰는 해결 방법
이름이 맞는데 아직 선언되지 않은 경우라면, 그 이름을 상수(constant) 값으로 선언해요.
const undefined = 'undefined';
@undefined
void f() {}
이름이 틀린 경우라면, 유효한 상수의 이름으로 바꿔요.
@Deprecated('...')
void f() {}
둘 다 아니라면 애노테이션을 제거해요.