tsconfig 역할

프로젝트의 타입 검사와 출력 규칙을 한곳에 묶는다

`tsconfig.json`은 단순 옵션 파일이 아니라 어떤 파일을 검사하고, 얼마나 엄격하게 보고, 어떤 JavaScript로 내보낼지 정하는 컴파일 지도입니다.

컴파일 스키마
입력 include 어떤 `.ts` 파일을 컴파일 대상으로 볼지 정한다.
검사 strict 암시적 any, null 가능성, 함수 호출을 더 엄격히 본다.
변환 target 어느 JavaScript 문법 수준으로 낮출지 정한다.
출력 outDir 컴파일된 `.js` 파일이 놓일 위치를 정한다.
옵션별 영향 매트릭스
target ES5, ES2017처럼 출력 JavaScript 문법 수준을 바꾼다. 런타임 호환
module CommonJS, ESNext 등 모듈 로딩 방식을 정한다. 빌드 환경
strict 타입이 애매한 코드를 컴파일 전에 더 빨리 드러낸다. 오류 감지
rootDir 소스 루트와 출력 구조를 예측 가능하게 맞춘다. 폴더 기준
헷갈릴 때 보는 표
타입 오류 strict, noImplicitAny, strictNullChecks 쪽을 의심한다.
실행 오류 target, module이 현재 Node 또는 번들러와 맞는지 본다.
파일 누락 include, exclude, rootDir, outDir의 범위가 맞는지 확인한다.
정상 구성 신호
IDE와 tsc가 같은 오류 프로젝트 설정을 에디터가 제대로 읽고 있다.
outDir에 JS 생성 검사 대상과 출력 위치가 연결되어 있다.
Node 실행 성공 컴파일 결과가 현재 런타임에서 해석된다.