티스토리 뷰

IT기본지식

Nodejs es6 babel실행 하기(동기/비동기)

정두현의아이티세상 2020. 9. 3. 11:07

npm설치하고 node 파일명으로 실행하면 대부분되었는데

 

어떤 파일부터 안되는 것이 보여 확인해보니 ES6이상인경우 변경을 해줘야 한다고 한다.

 

결국 babel을 설치하여 필요시마다 build하고 대상을 실행했다

(물론 변경된 파일을 실행해야한다)

 

"build": "cross-env BABEL_ENV=production  babel src --out-dir lib",

 

이렇게 project.json에 셋팅하고 npm run build 하면

src폴더의 js파일들이 lib로 복제되면서 변경이 된다.

 

그렇게 하던중에 갑자기

 

 regeneratorRuntime is not defined

을 만나게 된다.

 

이건 기본이 비동기인 Nodejs에서 동기실을 사용할경우 변환된 내용이 인식 안되는 문제이다.

 

해결하기 위해서는 몇가지 작업이 필요한데

 

npm install --save-dev babel-cli babel-preset-react

일단 설치 끝내고

 

.babelrc에 

{
  "presets": [
    ["babel-preset-env",
      {
        "targets": {
          "node": "10"
        }
      }
    ],
    "babel-preset-react"
  ],
  "plugins": []
}

 

요렇게 기록해서 저장하고 build 진행하니 문제없게 진행되었다.

 

 

혹시 필요할경우 babel-polyfill 모듈이 필요할수도 있다.

 

'IT기본지식' 카테고리의 다른 글

spring boot mariadb 연동 과 mysql 연동  (0) 2021.06.01
redis설치 및 검증  (0) 2020.10.12
Python 저장된 모델 로딩 성능 비교  (0) 2020.07.16
Atom GIT연동하기  (0) 2020.07.16
java redirect시 파라미터 넘기기  (0) 2017.06.01
댓글