320x100
320x100

files

{
  "compilerOptions": {},
  "files": [
    "core.ts",
    "sys.ts",
    "types.ts",
    "scanner.ts",
    "parser.ts",
    "utilities.ts",
    "binder.ts",
    "checker.ts",
    "tsc.ts"
  ]
}

: tsc가 처리할 수 있는 파일들을 명시

 

 

 

 

include

{
  "include": ["src/**/*", "tests/**/*"]
}

: 컴파일 할 파일의 범위

: pattern 형태로 원하는 파일 목록 지정 가능

 

 

- pattern

: * (없거나 하나 이상의 문자열과 일치. 디렉터리 구분자 제외)

: ? (하나의 문자와 일치. 디렉터리 구분자 제외)

: **/ (단계에 관계없이 아무 디렉터리와 일치)

 

 

 

 

 

exclude

{
  "exclude": ["node_modules"]
}

: 컴파일 시 제외할 파일의 범위

 

 

 

 

CompilerOptions

{
  "compilerOptions": {
    
  }
}

: 컴파일 시 처리 옵션

 

- target

: tsc가 최종적으로 컴파일하는 결과물의 문법 형태

: ES5, ES6 등

 

- lib

: 현재 프로젝트에서 사용할 수 있는 특정 기능에 대한 타입을 추가 (ES5, ES6 등)

: typeScript에게 해당하는 문법과 기능이 있다는 것을 명시할뿐, 런타임에 해당 기능이 추가되는 것은 아니다

 

- outDir

: 빌드된 결과물이 저장되는 디렉터리

 

- noEmit

: 최종 결과물이 나오지 않음. tsc를 타입 체크용으로 사용할지, 컴파일용으로 사용할지 결정

 

- declaration

: .ts 파일에 .d.ts 파일 또한 같이 출력물에 포함될지 결정

 

- emitDeclarationOnly

: 출력물에 declaration 파일만 나오게됨

 

- sourceMap

: .js.map이나 .jsx.map 파일을 출력물에 포함

 

- typeRoots

:배열로 설정하며, 기본 값은 ["node_modules/@types"]

: typeScript가 정의되어 있는 type을 찾는 공간

: 경로는 tsconfig.json이 있는 곳 부터 상대경로로 작성

 

- strict

: 모든 타입검사 옵션을 true로 설정

: 제외할 타입은 따로 false로 정의해야함

 

※ 컴파일 옵션

: https://typescript-kr.github.io/pages/compiler-options.html

 

TypeScript 한글 문서

TypeScript 한글 번역 문서입니다

typescript-kr.github.io

 

- module

: 컴파일된 결과물이 사용하게될 module 방식

 

- moduleResolution

: 모듈 해결 전략을 설정

: node로 설정하면 node.js가 사용하는 방식으로 컴파일 시 모듈을 찾음

 

- baseUrl

: 외부 모듈이 아닌 이상 상대 경로로 모듈을 참조

: src로 설정하면 src/를 기준으로 절대 경로로 모듈 참조가 가능해짐

 

- paths

: 모듈  참조를 baseUrl을 기준으로 매핑

: 번들러를 사용할 경우 별도로 설정 필요

 

 

 

 

 

 

 

Reference

 

{ tsconfig.json } 제대로 알고 사용하기

tsconfig.json을 왜 그리고 무엇을 위해서 설정하는지 알아보고자 한다.

velog.io

 

300x250
728x90