[TypeScript] 타입스크립트 컴파일러

해리포터·2022년 12월 5일
0
post-thumbnail

코드를 작성하고 저장할 때마다 자동으로 컴파일 실행하고 싶을 때는 컴파일 명령어 뒤에 --watch 또는 -w를 붙여서 watch mode 를 사용하면 된다.

단일 파일만 컴파일 할 때

tsc app.ts(파일명) --watch
tsc app.ts(파일명) -w

--watch 를 줄여서 -w로 쓸 수 있다.



여러 파일(전체 파일)을 컴파일 할 때

// 처음 한번만 실행
tsc --init

// 위 명령어 실행 후 watch mode 실행
tsc -w

📌 tsc --init

  • 이 명령어를 실행한 파일 디렉토리 안에 있는 파일 전부를 타입스크립트가 관리하는 명령어이다.
  • 처음 한번만 실행한다.
  • 실행하면 tsconfig.json 파일이 생성된다.
  • 이후 터미널에 파일 명 없이 tsc 만 입력하면 해당 디렉토리 안에 있는 모든 .ts 파일을 컴파일 한다.
  • tsc -w 를 실행하면 파일을 저장할 때마다 자동으로 프로젝트의 모든 .ts 파일을 컴파일 한다.

📌 tsconfig.json

  • 타입스크립트에게 어떤식으로 컴파일할지 옵션들(compilerOptions)을 사용해서 정할 수 있다.


원하는 파일만 골라서 컴파일 할 때

📌 exclude

  • tsconfig.json에서 exclude 로 컴파일 제외시키고 싶은 파일을 정할 수 있다.
// tsconfig.json

{
	"compilerOptions": {
		/* basic options */
	},
	"exclude": [
		"analytics.ts"
	]
}

만약 특정 파일이름 (예시: .dev.ts) 으로 끝나는 파일들만 제외하고 컴파일 하고 싶을 때

  • * 를 사용한다.
{
	"compilerOptions": {
		/* basic options */
	},
	"exclude": [
		"*.dev.ts"
	]
}

모든 폴더에서 .dev.ts 로 끝나는 파일들을 제외하고 컴파일 하고 싶을 때

{
	"compilerOptions": {
		/* basic options */
	},
	"exclude": [
		"**/*.dev.ts"
	]
}

💡 참고

  • 보통 node_modules를 exclude 한다. → 왜냐하면 서드파티 라이브러리들을 건드릴 필요가 없기 때문이다.

  • exclude를 따로 쓰지 않는다면 default로 node_modules는 exclude 되어있다.

  • ❗️하지만 exclude를 사용한다면, node_modules를 꼭 포함해야 한다.


📌 include

{
	"compilerOptions": {
		/* basic options */
	},
	"include": [
		"app.ts" // app.ts를 제외한 나머지 파일은 컴파일 하지 않는다.
	]
}
  • include 에 없는 파일들은 컴파일하지 않는다.
  • include 와 exclude를 같이 쓸 때는 include 에서 exclude를 제외한 파일들을 컴파일 시킨다.

📌 files

{
	"compilerOptions": {
		/* basic options */
	},
	"files": [
		"app.ts" 
	]
}
  • 특정 파일만 컴파일 할 수 있다.

💡 include와 files의 차이점

  • files를 사용하면 특정 파일의 폴더까지는 지정할 수 없다.

  • 특정 폴더까지 지정해야 한다면 include를 사용해야 한다.

profile
FE Developer 매일 한 걸음씩!

0개의 댓글