tsconfig.json
- tsconfig파일은 타입스크립트 파일을 자바스크립트로 컴파일 하는 과정에서 설정을 정의해놓는 파일이다.
- 프로젝트를 컴파일 하는데 필요한 루트파일, 컴파일러 옵션 등을 상세히 설정할 수 있다.
- 미리 옵션들을 정의해 놓으면 더이상 컴파일할때 하나하나 대상파일이나 옵션을 지정해주지 않아도 된다.
tsconfig 전역 속성
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"allowJs": true,
"checkJs": true,
"jsx": "preserve",
"declaration": true,
"noImplicitAny": true,
"noUnusedParameters": true,
"noImplicitReturns": true,
"noFallthroughCasesInSwitch": true,
"outFile": "./",
"strict": true,
"outDir": "./",
"sourceMap":true,
"rootDir": "./",
"removeComments": true,
"lib": ["ES2020", "DOM"],
}}
1. files
- 타입스크립트 변환 명령어를 입력할때마다 대상 파일의 경로를 지정하지 않고 설정 파일에 미리 정의해놓을수 있음.
2. include
files과 같이 파일을 개별로 지정하지 않고 include 옵션으로 변환할 폴더를 지정할 수 있음.
3. exclude
- 반대되는 속성으로 변환하지 않을 폴더 경로를 지정
4. extends
- 다른 tsconfig.json 파일을 상속받아서 설정을 재사용할 수 있게 해주는 속성
- 만약 설정하지 않으면 기본적으로
node_modules, bower_components 같은 폴더를 제외
- 컴파일 대상 경로를 정의하는 속성의 우선 순위 files>include = exclude
5. references
- 여러개의 하위 프로젝트로 구성된 프로젝트의 의존 관계를 지정하는 속성
6. compileOnSave
- 저장 시 자동으로 컴파일 여부를 설정하는 속성
7. typeAcquisition
- @types 패키지 자동 설치 및 갱신을 설정하는 속성