이번에는 REPL이 아닌 프로젝트를 생성하여 TypeScript를 적용해보려고 한다.
이전 포스팅에서 열심히 무언가를 했던 작업 폴더를 과감히 삭제했다. (사실 뭐 한 것도 없지만.)
다시 새로운 작업 폴더를 만들었다.
터미널을 열어서 아래 명령어를 입력한다.
>> npm init -y
그리고 타입 스크립트 설치를 위해 아래 명령어를 입력한다.
>> npm i typescript
타입 스크립트의 환경설정 파일 설치를 위해 아래 명령어도 입력한다.
>> tsc --init
이렇게 하면 tsconfig.json 파일까지 생성이 된 것이다.
혹시 tsconfig.json 파일이 보이지 않는다면, 새로고침을 누르면 된다.
root경로에 src폴더와 out폴더도 생성한다.
그리고 tsconfig.json 파일을 열어서 아래 내용을 추가한다.
(없으면 추가하고, 있으면 수정한다.)
나의 경우에는 주석처리가 되어 있었다.
{
"compilerOptions": {
"outDir": "./out",
"rootDir": "./src"
}
}
타입 스크립트 소스파일은 src 폴더에 있고,
컴파일 결과물(자바스크립트 소스파일)은 out 폴더에 저장하라는 의미이다.
그리고 .vscode/launch.json 파일을 생성하여 아래 코드를 추가한다.
{
"version": "0.2.0",
"configurations": [
{
"type": "node",
"request": "launch",
"name": "Launch Program",
"program": "${workspaceFolder}/src/index.ts",
"outFiles": ["${workspaceFolder}/**/*.js"]
}
]
}
이 프로젝트는 /src/index.ts 파일을 진입점으로 시작하며, "program" 속성 값으로 진입점을 변경할 수 있다.
이제 설정은 끝났으니, src폴더 내에 index.ts파일을 만들어보자.
그리고 아래 코드를 입력한다.
const hello: string = "Hello World!";
console.log(hello);
그리고 터미널에 tsc를 입력하니.. out 폴더에 index.js파일이 생겼다.
그리고 F5를 눌렀더니! 오류가 발생했다.
Missing initializer in const declaration
뭐냐 이건...
좀 찾아보니.. 소스파일을 javascript로 인식해서 그런 것 같다고 하는데.. 천천히 찾아봐야겠다.
vscode의 'Code Runner'라는 확장 프로그램을 설치하여 ts파일을 직접 run 시켰더니 정상적으로 출력된다.
마지막으로,
매번 tsc를 입력하여 컴파일을 할 수 없기 때문에, 컴파일을 자동으로 하는 옵션을 추가했다.
.vscode/tasks.json 파일 생성 후 아래 코드 입력한다.
{
"version": "2.0.0",
"tasks": [
{
"type": "typescript",
"tsconfig": "tsconfig.json",
"option": "watch",
"problemMatcher": [
"$tsc-watch"
],
"group": "build"
}
]
}
그리고 Ctrl+Shift+B를 누르면 감시 모드가 실행된다.
버전에 따라 tsc: watch-tsconfig을 클릭해야 할 수도 있다.
감시 모드가 실행되어 있는 상태에서 src 폴더 내에 ts파일을 생성하면 자동으로 out 폴더에 js파일이 생기는 것을 확인할 수 있다.
지금까지 타입 스크립트에 대한 개념과 사용방법을 간단히 공부해봤는데,, 아직은 좀 익숙하지가 않은 것 같다.
습관이 좀 되어야겠지만 Vue나 React 등 프로젝트를 진행할 때 처음에 타입 스크립트에 대한 설정을 미리 해두고 진행을 해야 할 것 같다.
'개발 > typescript' 카테고리의 다른 글
[TypeScript] 타입스크립트 시작하기 (0) | 2022.03.16 |
---|---|
[TypeScript] 타입스크립트 개념 및 개발환경 구성 (0) | 2022.03.14 |