• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

바벨 없이 진행을 했는데요

21.07.19 22:16 작성 조회수 118

0

안녕하세요

다름이 아니고 바벨없이

노드 최신버전 16. 으로 개발을 진행해서

막힘 없이 모든 튜토리얼들을 구현 했는데요 (찾아보면서 모든 에러들을 해결 했구요 바벨 없이 "type" : "module" 정의 해주고 난후 마지막 배포 부분 중간 까지 진행 하였습니다)

지금 현재 한부분에서 막혀있습니다.

지금 putty로 모든 AWS EC2 에 필요한 부분들을 진행 한후에 client 폴더에서 build까지 되는데요, 다만 튜토리얼 마지막 부분쯤에 AWS 에서 제공한 public IP 주소로 웹사이트를 키실때 "sudo node build/server.js" 를 치시는데 

저는 지금 바벨 없이 진행을 했기때문에

root folder package.json 안에

"dev": "nodemon ./server/server.js"

"prebuild": "cd client && npm run build"

이 두개만 정의가 되어 있고 아래 두개는 정의 되어 있지 않습니다 (필요 없다고 판단되어서요)

"build" : "babel server --out-dir build"
"build:sever" : "babel server --out-dir build"

다만, 저 부분들이 없기때문에 "sudo node build/server.js" 를 

못하고 있는데요. 어떻게 진행하면 될까요 ?

답변 2

·

답변을 작성해보세요.

0

aidenkim92님의 프로필

aidenkim92

질문자

2021.07.20

답변 감사합니다

하지만 root folder 에 있는 package.json에 "build" 자체가 정의가 되어 있지 않습니다. 

npm build 는 현재 client folder에 있는 package.json에만 되어 있구요..

얼핏보고 client인줄 알았네요. 죄송합니다. ^^;

babel은 설정에 따라 특정 문법을 다른 문법으로 바꿔줍니다.

(성경에서 바벨탑을 쌓을때 모두 같은 언어를 썼다고 이야기 되는 것에 착안한 네이밍입니다)

※ 코드를 경량해 주거는 것은 client의 웹팩의 역할입니다. 

따라서 우리의 경우는 ES6문법을 CommonJS 문법 으로 바꿔주는 역할을 합니다. 

그러므로

"build" : "babel server --out-dir build" (server 폴더내 내용을 build 폴더에 CommonJS문법으로 해석해 놓아라)

"build:sever" : "babel server --out-dir build"

은 질문자의 생각대로 필요없습니다. 그러면 어떻게 해야할까요? 그냥 돌리시면 됩니다. 

node server.js // pm2로 실행하기전에 테스트이니, server.js 한번 실행해봐라 입니다. 

따라서 ec2 서버에 node 13버전 이상을 설치해놓으셨고, type: "module"로 해놓으셨다면

node server.js 로 작동시키시면 되십니다. 

aidenkim92님의 프로필

aidenkim92

질문자

2021.07.20

아닙니다 제가 지금 외국에 산지 오래되서 한국 말이 꽤 서툴어서 그런거 같네요 !

친절한 답변감사합니다 ㅎㅎ 깔끔하게 이해 됬네요!

항상 친절한 답변해주셔서 감사합니다!

0

모두 잘하셨다면 이부분도 금방 넘어가실 수 있으실 거네요. 

"build" : "babel server --out-dir build"

이것은 build폴더에 빌드하라는 것이니, 그냥 build 하시면 됩니다. 

npm build