NodeJS (NestJS)
NodeJS package manage
SMASMC
2024. 2. 20. 03:43
JSON형식으로 package선언
{
"name":"npmtest",
"version":"0.0.1",
"description": "example package.json",
"main":"index.js",
"scripts": {
"test":"echo \"Error: no test specified\" && exit 1"
},
"author":"SMCSMA",
"license":"ISC"
}
npm install express
- 해당 명령어로 인해 node_modules가 install 된다.
express가 의존하는 패키지들의 의존관계는 다음과 같다.
example ) npmtest [프로젝트 명?]-> express-> accpts, cookie, debug, methods...
npm install morgan cookie-parser express-session
//
npm install --save-dev nodemon
- 해당 패키지는 소크코드를 변경하고, 저장할 때마다 자동으로 노드를 재실행해주는 패키지이다.
sudo npm install --global rimraf
- rimraf는 리눅스나 맥의 rm -rf 명령어를 윈도우에서도 사용할 수 있게 해주는 패키지이다. rm -rf는 지정한 파일이나 폴더를 지우는 명렁어이다. 전역 설치했으므로 rimraf명령어를 콘솔에서 사용할 수 있다. (전역 설치한 패키지는 package.json에 기록되지 않는다.)
Package version 이해하기
Makor
- 하위 호환이 되지 않을 정도에 패키지의 내용이 수정 되었을 때, 올리는 것
example ) 1.5.0 => 2.0.0으로 올렸을 경우 1.5.0버전 패키지를 사용하고 있던 사람들이 2.0.0으로 업데이트했을 때, 에러가 발생할 확률이 크다.
Minor
- 하위 호환이 되는 기능을 업데이트 할때, 올리는 것
example ) 1.5.0 => 1.6.0으로 올렸을 경우 1.5.0 사용자가 1.6.0으로 업데이트했을 때, 아무 문제가 없어야한다.
Patch
- 새로운 기능이 추가되었다기보다는 기존 기능에 문제가 있어서 문제를 수정한 것을 올리는 것
example ) 1.5.0 => 1.5.1으로 올렸을 경우 업데이트 후 아무런 문제가 없어야한다.
npm i morgan cookie-parser express-session dotenv
- dotenv는 process.env를 관리하기 위해 설치
npm i multer
- multer는 이미지, 동영상 등을 비롯한 파일을 업로드할 때, 사용되는 middleware이다.