Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Tags more
Archives
Today
Total
관리 메뉴

나 개발자 할래요

2024.10.08 본문

개발자 되는 법.../TIL...

2024.10.08

개발_자 2024. 10. 8. 17:19

빌드 시 타입 오류 발생

   } catch (error: any) {
         return NextResponse.json({ error: error.message, status: 500 });
   }

 

error 타입 문제

TS 의 eslint 규칙 중 @typescript-eslint/no-explicit-any가 활성화되어 있어 발생하는 오류. 즉, 코드에서 any 타입을 명시적으로 사용하는 것을 방지하기 위해 발생하는 오류이다. any 타입은 TS 의 타입 안정성을 떨어뜨리기 때문에 명시적으로 사용하는 것을 피하도록 권장된다.

 

해결 방법

instanceof Error로 타입을 좁혀주면 타입 에러가 사라진다.

이렇게 타입을 좁혀주는 것을 타입 가드라고 한다.

 

instanceof 연산자를 사용하면 객체가 특정 클래스의 인스턴스인지 확인할 수 있습니다.

} catch (error) {
	if (error instanceof Error)
	  return NextResponse.json({ error: error.message, status: 500 });
}

 

if (error instanceof Error)는 error가 실제로 Error 객체인지 확인하는 조건문

TS에서 unknown이나 any 타입의 변수를 사용할 때, 해당 변수가 특정 클래스의 인스턴스인지 검사하려면 instanceof 키워드를 사용

'개발자 되는 법... > TIL...' 카테고리의 다른 글

2-1. React Server Component & Client Component  (1) 2024.10.11
1-7. 특별한 예약 파일들  (0) 2024.10.10
2024.10.08  (0) 2024.10.08
2024.10.08  (0) 2024.10.08
2024.10.07  (0) 2024.10.08