typescript 컴파일러

Zain·2023년 5월 17일
0

변경사항이 있을때 자동으로 컴파일하기 (특정파일)
tsc app.ts -w


전체 ts파일을 컴파일하기
tsc --init

tsconfig.json파일이 생성됨
타입스크립트가 관리해야 하는 모든 하위 폴더를 참고하기 위한 파일이다.

tsc / tsc -w
위의 명령어를 입력시 모든 ts파일이 컴파일된다. / 모든 파일이 자동으로 컴파일됨


tsconfig.json
ts컴파일 설정하기

"exclude": ["some.ts"]
컴파일시 포함되어서는 안되는 파일 구분하기
tsc 실행시 some.ts파일은 컴파일되지 않는다.

"exclude": ["node_modules"]
기본적으로는 라이브러리 내부 ts를 사용하는 경우를 대비해 nodemodule폴더만 입력해준다

node_modules만 제외를 원하면 굳이 exclude옵션을 사용 안해도 된다. default값으로 node_modules를 제외되기 때문.


"include": []
해당 배열안에 포함되지 않은 파일은 컴파일 되지 않는다.
include 옵션을 사용하지 않으면 기본적으로 모든 ts파일이 컴파일 된다.


"compilerOptions":{}
컴파일 옵션 살펴보기

target

target - 어떤 자바스크립트 버전으로 컴파일할건지
es5 / es6

lib

"lib": [] - es6의 기능들을 타입스크립트에서도 사용 가능하게 해줌
// lib 로 비활성화 되어 있어도 일부 기본 설정이 적용됨
타입스크립트가 브라우저에서 작동하는 데 필요한 일부 기능들이 필요함 domAPI와 같은
"lib": [
"DOM",
"ES6",
"ScriptHost",
"DOM.Iterable"
]
주석을 하게 되면 위와 같은 옵션들이 적용된다.

allowJs

"allowJs": true,
"checkJs": true,

checkJs와 함께 사용되고, 확장자가 .ts가 아니더라도 ts일부 기능의 장점을 취하고자 할 때 유용함. 잠재적 에러를 잡아줌

sourceMap

"sourceMap": true,
해당 옵션을 true로 해주면 ts파일을 컴파일시
.map.js 파일이 추가되고 브라우저 소스탭에서 js 파일이 아닌 ts파일의 소스도 같이 확인할 수 있다.
디버깅에 유리해진다.

outDir, rootDir

기본적으로 프로젝트를 구성하는 소스가 담긴 파일들은 root가 아닌 src 폴더에 위치한다.

root디렉토리에 src와 dist폴더를 추가해준다.

src는 ts파일이 담겨있고 dist폴더에는 컴파일된 js파일이 위치해있다.

"rootDir": "./src"
"outDir": "./dist"
옵션을 위와 같이 수정해준다.

removeComments

"removeComments": true,
로 옵션을 설정해주면 컴파일시 모든 주석은 제외된다.

noEmitOnError

"noEmitOnError": false
해당 옵션을 ture로 설정하게되면
ts파일 내부에서 에러가 있는 경우 해당 ts파일을 컴파일을 하지 않는다.(js파일 생성 x)

profile
JSON 상하차 마스터 | Vue & Laravel | JS, PHP

0개의 댓글