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
- module
: 컴파일된 결과물이 사용하게될 module 방식
- moduleResolution
: 모듈 해결 전략을 설정
: node로 설정하면 node.js가 사용하는 방식으로 컴파일 시 모듈을 찾음
- baseUrl
: 외부 모듈이 아닌 이상 상대 경로로 모듈을 참조
: src로 설정하면 src/를 기준으로 절대 경로로 모듈 참조가 가능해짐
- paths
: 모듈 참조를 baseUrl을 기준으로 매핑
: 번들러를 사용할 경우 별도로 설정 필요
Reference
'Programming > TypeScript' 카테고리의 다른 글
@types 가 존재하지 않을 때 해결 방법 (0) | 2024.01.20 |
---|---|
타입스크립트와 객체지향 프로그래밍 (OOP) (1) | 2024.01.13 |
타입스크립트 데코레이터 (5) | 2024.01.13 |
프로젝트 내에서 타입 관리하기 (0) | 2023.12.28 |
타입스크립트로 구현하는 좋은 예외(Exception) 처리 (0) | 2023.12.28 |