일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
- 백준
- 배열 중복 제거
- 항해99후기
- jQuery
- 자바스크립트
- react
- server component
- NextJS v13
- 알고리즘
- 그리디
- JavaScript
- 동전 0
- 중복선택
- 프로그래머스
- 로딩 후 실행
- greedy
- 부트캠프항해
- db수정
- 항해99
- 중복카테고리
- 항해99솔직후기
- 날씨 api
- 카테고리필터
- 숫자를 별점으로
- 탐욕알고리즘
- 배열 메소드
- 클라이언트 컴포넌트
- 항해99추천
- 서버 컴포넌트
- 실전프로젝트
- Today
- Total
공부 및 일상기록
[Typescript] 컴파일 세부설정 (tsconfig.json) 본문
타입스크립트 설치 후 tsconfig.json파일이 없다면 직접 설정해 주어야 한다.
root위치에 tsconfig.json 파일을 직접 만든다.
그리고 아래와 같이 코드를 기입한다.
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
}
}
target은 타입스크립트 파일을 어떤 버전의 자바스크립트로 바꿔줄지 정하는 부분이다.
es5로 설정하면 es5버전 자바스크립트로 컴파일 해준다.
최신버전 자바스크립트로 컴파일하기를 원하면 esnext를 입력하면 된다.
module은 자바스크립트 파일간 import 문법을 구현할 때 어떤 문법을 쓸지 정하는 곳이다.
commonjs는 require 문법이다.
ex2015, esnext는 import 문법을 사용한다.
어느정도의 IE호환성을 원한다면 es5, commonjs 로 쓰는것이 좋다.
하지만 신버전 자바스크립트로만 표현 가능한 문법이 있다면
esnext로 최신 버전의 자바스크립트로 컴파일 해야한다.
{
"compilerOptions": {
"target": "es5",
"module": "commonjs",
"noImplicitAny": true,
"strictNullChecks": true
}
}
nolmplicitAny는 any라는 타입이 의도치 않게 발생할 경우 에러를 띄워주는 설정이다.
strictNullChecks는 null, undefined 타입에 이상한 조작을 하면 에러를 띄워주는 설정이다.
그외 항목들...
{
"compilerOptions": {
"target": "es5", // 'es3', 'es5', 'es2015', 'es2016', 'es2017','es2018', 'esnext' 가능
"module": "commonjs", //무슨 import 문법 쓸건지 'commonjs', 'amd', 'es2015', 'esnext'
"allowJs": true, // js 파일들 ts에서 import해서 쓸 수 있는지
"checkJs": true, // 일반 js 파일에서도 에러체크 여부
"jsx": "preserve", // tsx 파일을 jsx로 어떻게 컴파일할 것인지 'preserve', 'react-native', 'react'
"declaration": true, //컴파일시 .d.ts 파일도 자동으로 함께생성 (현재쓰는 모든 타입이 정의된 파일)
"outFile": "./", //모든 ts파일을 js파일 하나로 컴파일해줌 (module이 none, amd, system일 때만 가능)
"outDir": "./", //js파일 아웃풋 경로바꾸기
"rootDir": "./", //루트경로 바꾸기 (js 파일 아웃풋 경로에 영향줌)
"removeComments": true, //컴파일시 주석제거
"strict": true, //strict 관련, noimplicit 어쩌구 관련 모드 전부 켜기
"noImplicitAny": true, //any타입 금지 여부
"strictNullChecks": true, //null, undefined 타입에 이상한 짓 할시 에러내기
"strictFunctionTypes": true, //함수파라미터 타입체크 강하게
"strictPropertyInitialization": true, //class constructor 작성시 타입체크 강하게
"noImplicitThis": true, //this 키워드가 any 타입일 경우 에러내기
"alwaysStrict": true, //자바스크립트 "use strict" 모드 켜기
"noUnusedLocals": true, //쓰지않는 지역변수 있으면 에러내기
"noUnusedParameters": true, //쓰지않는 파라미터 있으면 에러내기
"noImplicitReturns": true, //함수에서 return 빼먹으면 에러내기
"noFallthroughCasesInSwitch": true, //switch문 이상하면 에러내기
}
}
출처 : 코딩애플 https://codingapple.com/
코딩애플 온라인 강좌 - 개발자도 단기완성!
단연 NO1 강사님의 NO.1 강의 역시나 명강입니다. IT 업계의 대치동 NO1. 강사같은 엄청난 강의력. 코딩애플님의 강의는, 엄청나게 기초적인 것부터 가르치는 듯 보이지만, 실제로 다루는 깊이는 절
codingapple.com
'개발 > Javascript' 카테고리의 다른 글
호이스팅이란? (0) | 2023.07.20 |
---|---|
동기와 비동기 그리고 Promise와 async await (0) | 2023.05.03 |
[Javascript] 콜스택과 힙 (0) | 2023.01.17 |
[Javascript] 자바스크립트 클래스 (0) | 2023.01.17 |
[Javascript] 자바스크립트 메모리 관리 (0) | 2023.01.17 |