[TS]tsconfig.json 전역 속성?

박두팔이·2024년 10월 8일
0

자바스크립트

목록 보기
9/9

tsconfig 전역 속성?

tsconfig 전역 속성이란, 파일의 최상위에 위치하고 있는 속성들을 의미한다.

{
    // TypeScript 컴파일러의 옵션들을 지정하는 속성
    "compilerOptions": { 
        "target": "es5", 
        "module": "commonjs", 
        "strict": true, 
        "sourceMap": true
        // ... 무수히 많은 속성들
    },

    // 컴파일할 파일들의 개별 목록을 지정하는 속성
    "files": ["src/main.ts", "src/utils.ts"],

    // 컴파일할 파일들을 지정하는 속성 (와일드 카드 패턴으로 묶어 표현)
    "include": [ "src/**/*.ts" ], 
    
    // 컴파일 대상에서 제외할 파일들을 지정하는 속성 
    "exclude": [ "node_modules", "**/*.test.ts" ], 
    
    // 다른 tsconfig.json 파일을 상속받아서 설정을 재사용할 수 있게 해주는 속성 
    "extends": "./configs/base.json", 
    
    // 여러 개의 하위 프로젝트로 구성된 프로젝트의 의존 관계를 지정하는 속성 
    "references": [ 
        { "path": "./subproject1" }, 
        { "path": "./subproject2" } 
    ], 
    
    // 타입 습득(type acquisition)과 관련된 옵션들을 지정하는 속성 
    "typeAcquisition": { 
        "enable": true, 
        "include": ["jquery"], 
        "exclude": ["react"] 
    }, 
        
    // watch 모드와 관련된 옵션들을 지정하는 속성 
    "watchOptions": { 
        "watchFile": "useFsEvents", 
        "watchDirectory": "useFsEvents", 
        "fallbackPolling": "dynamicPriority"
    }
}

1. compilerOptions

TypeScript 컴파일러의 옵션을 지정하는 속성으로, 컴파일 방식과 대상 ts버전, 엄격한 타입 검사 등을 포함한다.

  • target: es6: 컴파일된 JavaScript 코드가 ECMAScript 6를 대상으로 생성된다.
  • module: commonjs: 모듈 시스템을 CommonJS로 설정한다. 이 옵션은 Node.js 환경에서 모듈을 관리할 때 사용됩니다.
  • strict: true: 엄격한 타입 검사 모드를 활성화하여 코드의 안전성을 높인다. (strictNullChecks, strictFunctionTypes 등 엄격한 검사 옵션이 모두 활성화됨.)
  • sourceMap: true: 컴파일된 JavaScript 파일에 소스 맵을 생성하여 디버깅 시 원본 TypeScript 코드와의 매핑을 가능하게 한다.

2. files

컴파일할 파일들의 개별 목록을 지정하는 속성으로, 이 속성에 포함된 파일들만 컴파일 한다.

  • ["src/main.ts", "src/utils.ts"]: src 디렉터리의 main.ts와 utils.ts 파일을 컴파일 대상으로 지정
profile
기억을 위한 기록 :>

0개의 댓글