Node.js 에 Babel 적용하기

Node.js 에서는 최신 자바스크립트 문법이 실행되지 않는다.
babel 을 이용해서 최신 자바스크립트 문법을 변환해서 사용해야 한다.

Babel 설치

npm 으로 개발환경에서만 사용하게
babel 관련 패키지를 설치한다.

1
npm i -D @babel/core @babel/cli @babel/node @babel/preset-env
  • @babel/core : babel 의 핵심 패키지
  • @babel/cli : babel 의 커맨드 라인 도구
  • @babel/preset-env : 가장 많이 사용하는 바벨 설정
  • @babel/node : 코드의 변환과 node 실행을 같이 하는 패키지

실행방법

1
2
3
4
5
6
7
8
9
## babel 로 index.js 를 변환할 때
npx babel --presets @babel/env index.js

## babel 로 변환하고 node 로 실행할 때
npx babel --presets @babel/env index.js | node

## babel-node 로 변환하고 실행할 때
npx babel-node --presets @babel/env index.js

babel presets 설정

실행할 때 마다 presets 을 설정하기 번거로우니 바벨 설정파일 .babelrc 또는 패키지설정 package.json 파일에 설정을 추가한다

.babelrc
1
2
3
{
"presets": ["@babel/env"],
}
package.json
1
2
3
4
5
6
7
8
9
10
11
12
13
{
(... 생략 ...)
"devDependencies": {
"@babel/cli": "^7.10.4",
"@babel/core": "^7.10.4",
"@babel/node": "^7.10.4",
"@babel/preset-env": "^7.10.4"
},
+ "babel": {
+ "presets": ["@babel/env"]
+ },
(... 생략 ...)
}

설정 후에는 다음 같이 presets 옵션을 주지 않고 실행할 수 있게 된다

1
npx babel-node index.js