맨날 붙여넣기만 하다가 오늘은 갑자기 의문이 들었다.
npm install --save 하고 --save-dev가 대체 뭔 차이지? 잘 안쓰고 맨날 찾아서 붙여넣기만 하니 알리가 있나..
그래서 찾아봤다. 구글 검색을 해보니 아래와 같은 글이 있었다.
https://www.linkedin.com/pulse/npm-dependencies-vs-devdependencies-daniel-tonon
내가 쓴 내용은 위에 링크의 글을 일부 번역한 글이다.
npm install module --save
특정 A 모듈을 Install 할 때 --save 옵션을 넣으면 package.json 에 dependencies 목록에 포함된다. Dependencies 목록에 있다는 것은 현재 npm 모듈이 A 모듈 없이는 사용할 수 없다는 뜻이다. 즉, A 모듈 없이는 동작하지 않는다.
npm install module --save-dev
특정 A 모듈을 Install 할 때 --save-dev 옵션을 넣으면 package.json 에 devDependencies 목록에 포함된다. 이건 현재 npm 모듈은 A 모듈과는 dependency가 없지만 개발 환경에는 연관성이 있다는 뜻이다.
npm 으로 퍼블리싱을 할 경우
npm 모듈이 동작하는데 필요한 모듈이라면 --save 플래그를 사용하고 모듈 동작에는 필요 없지만 테스트에 필요하다면 --save-dev 플래그를 사용한다.
NPM으로 퍼블리싱을 안할경우
상관할 필요는 없지만 작성한 소스코드에 영향을 주는 모듈은 --save, 컴파일러가 작동하는데 필요한 모듈은 --save-dev 플래그를 사용한다.
'Development > Frontend skills' 카테고리의 다른 글
edX - Introduction to ReactJS Module1 내용정리 (0) | 2018.04.18 |
---|---|
[npm] 왠지 자주 쓸것 같은 npm 명령어 (0) | 2018.04.17 |
map() 메소드 사용 (0) | 2017.01.16 |
React 에서 props 사용 (0) | 2017.01.09 |
React.. 끄적끄적. (0) | 2017.01.09 |