본문 바로가기

JavaScript/JS_Project

[Video app] package.json, express, dependencies

package.json에서 "scripts"은 콘솔에서 내가 만든 명령어를 실행하게 해준다.

package.json에서 "dependencies"는 해당 패키지가 작동하기 위해서 필요한 다른 package를 말한다.

npm run으로 실행 가능

 

서버를 만들어 주기 위해서 express를 설치해준다. -> npm i express 으로 설치

express같은 package를 설치하면 자동으로 node_modules 폴더에 저장된다.

만약 해당 폴더가 삭제되었을 경우, npm i를 해준다면  dependencies에 있는 package들을 토대로

모듈을 다시 설치해준다.

(따라서 Github에 업로드한다면 용량이 큰 node_modules 폴더를 제외 시켜도 npm i로 재설치가 가능하다)

.gitignore 을 만들고 /node_modules 를 해줘서 업로드를 하지 말자

package-lock.json은 package를 안전하게 관리해준다.

npm i 를 할 때는 package.json을 저장하거나 닫은 후 실행 할 것(충돌방지)

 

express를 사용히려면 const express = require("express"); 로 변수 형태로 만든 후

const app = express();로 실행한다.

 

Babel은 javascript 컴파일러다. 즉 작성한 최신 js코드를 node js가 이해할 수 있도록 컴파일해준다.

 

dependencies는 프로젝트에 필요한 것들을 모아놓은 것이고, Express

devDependencies는 개발자에게 필요한 것들을 모아놓은 것이다. Babel

(npm i --save-dev @babel/core 사실 둘다 같은 modules에 설치되기 때문에 큰 문제는 없다.)

 

babel.config.json 파일을 새로 만들어 주고

{
"presets": ["@babel/preset-env"]
}

를 작성한 후

npm install @babel/preset-env --save-dev 실행(preset-env은 플러그인으로 최신 js 사용 가능 하다)

 

직접 babel을 사용하지 않을거라서 npm install @babel/core @babel/node --save-dev 로 node까지

설치 그 다음

"scripts": {
"dev": "babel-node index"
}

을 package.json에 작성한다. 이렇게 하면 index.js가 npm run dev라는 명령어로 실행이되는데,(import한 이후)

js파일을 매번 수정할 때 마다 명령어를 일일이 입력하기 번거로워서

nodemon package를 설치한다. nodemon은 우리가 만든 파일이 수정되는걸 감시해주는 패키지다.

(npm i nodemon --save-dev) 그 다음 아까 scripts에

"scripts": {
"dev": "nodemon --exec babel-node index.js"
},

를 추가해서 작성하면 된다.

SET UP 완료!

'JavaScript > JS_Project' 카테고리의 다른 글

[Video app] render, req, res, express, router, morgan  (0) 2021.11.12
[Video app] make server  (0) 2021.11.12
[Video app] Node JS란?  (0) 2021.10.11
[momentum app] stopwatch 만들기  (0) 2021.10.08
[momentum app] 그림 저장 버튼  (0) 2021.10.08