아직 typescript 사용법에 대해서는 공부를 해보지 않았다. 토이 프로젝트에서 type checking정도로만 사용하고 있는데, ts-ignore가 어디에 사용되는지 궁금하여 찾아보았다.
ts-ignore는 밑에 오는 코드의 타입에러를 무시할 수 있다. ts-ignore와 유사한 기능을 하는 것이 ts-expect-error가 있다. 이 두 차이점은 ts-ignore는 밑에 에러가 없을 경우 아무것도 작동하지 않는 것이다.
그렇다면 언제 ts-ignroe를 쓰고, ts-expect-error를 사용하여야 하는가?
typescript 문서에 잘 나와 있기 때문에 그대로 들고 와보았다.
@ts-expect-error
- 타입 시스템이 작동에 대한 오류를 발생시키는 테스트 코드 작성을 원하는 경우
- 수정이 빨리 이루어지길 원하며 빠른 해결책이 필요한 경우
- 오류가 발생한 코드가 다시 유효해지면 바로 억제 주석을 삭제하길 원하는 혁신적인 팀이 이끄는 적당한-크기의 프로젝트에서 작업하는 경우
@ts-ignore
- 더 큰 프로젝트를 갖고 있고 코드에서 발생한 새로운 오류의 명확한 책임자를 찾기 힘든 경우
- TypeScript의 두 가지 버전 사이에서 업그레이드하는 중이고, 한 버전에서는 코드 오류가 발생하지만 나머지 버전에서는 그렇지 않은 경우
- 솔직히 어떤 옵션 더 나은지 결정할 시간이 없는 경우
나는 현재 토이프로젝트에 type checking만 하고 있기 때문에 ts-ignore를 사용하여 에러를 무시하였다.