dot_shorthand_undefined_member 진단: 컨텍스트 타입에 그 멤버가 없어요
dot_shorthand_undefined_member 진단: 컨텍스트 타입에 그 멤버가 없어요
Dart 분석기가 내보내는 진단에는 이름이 있어요. dot_shorthand_undefined_member는 dot shorthand로 어떤 멤버를 참조했는데 그 멤버가 존재하지 않을 때 분석기가 알려주는 컴파일 타임 진단이에요. 이름이 맞는지, 컨텍스트 타입에 정말 그 멤버가 정의돼 있는지 확인해 주세요.
본문
설명
분석기는 dot shorthand를 사용해 멤버를 참조했는데 그 멤버가 존재하지 않을 때 이 진단을 만들어요.
예시
다음 코드는 열거형(enum) E에 c라는 정적 멤버가 정의돼 있지 않기 때문에 이 진단이 나와요.
void f() {
E e = .c;
print(e);
}
enum E { a, b }
흔한 해결 방법
이름이 올바르다면, 컨텍스트 타입(여기서는 열거형 E)에 그 이름을 가진 멤버를 정의해 주세요.
void f() {
E e = .c;
print(e);
}
enum E { a, b, c }
이름이 올바르지 않다면, 컨텍스트 타입(여기서는 열거형 E)에 이미 존재하는 멤버 이름으로 바꿔 주세요.
void f() {
E e = .b;
print(e);
}
enum E { a, b }