non_type_in_catch_clause 진단: catch 절의 on 다음에는 타입이 와야 해요
non_type_in_catch_clause 진단: catch 절의 on 다음에는 타입이 와야 해요
Dart 분석기가 만들어 내는 non_type_in_catch_clause 진단에 대한 설명이에요.
본문
catch 절에서 on 다음에 오는 식별자가 타입이 아닌 것으로 정의되어 있을 때 분석기가 이 진단을 만들어요.
설명
on 다음에는 잡아낼 예외 객체의 타입이 와야 해요. 그 자리에 함수나 변수 같은 다른 걸 쓰면 이 진단이 나와요.
예시
다음 코드는 f가 함수이지 타입이 아니기 때문에 이 진단을 만들어요.
void f() {
try {
// ...
} on f {
// ...
}
}
흔한 해결 방법
이름을 잡아내야 할 객체의 타입으로 바꿔요.
void f() {
try {
// ...
} on FormatException {
// ...
}
}