1. npm과 npx의 차이점
대표적으로 react 설치 시 cli(command line interface, 글자를 입력해 컴퓨터에 명령을 내리는 방식)를 npx로 활용하여 설치한다.
npx create-react-app my-app
근데 여기서 왜 npm을 하지 않고 npx를 사용하는 것인가 ?
- npm
- 노드 패키지 관리자이며 설치, 관리, 실행에 사용된다.
- npm install 명령어로 로컬 또는 글로벌 패키지를 설치한다.
- npm install -g lodash형태로 하면 -g 옵션이 글로벌 즉 시스템 전역에 패키지를 설치한다.
- 반면 npm install의 경우 로컬 설치를 한다.
- npx
- 5.2.0 npm 버전 이상에 포함된다.
- 패키지 실행에 최적화가 된 도구이며 실행 편의성에 따라 글로벌 혹은 패키지를 설치하지 않고 바로 직접 호출을 해준다.
2. 명령어 비교
- 물론 둘 다의 명령어를 통해서 설치할 수 있다.
[ npm ]
npm install create-react-app
npx create-react-app my-app
- npm install은 프로젝트 디렉토리에
로컬로 설치된다.
- node_moudules 폴더에 저장, package.json에 기록된다.
- create-react-app을 로컬에 설치하고 나서 바로 실행시켜야 하는 번거로움과 불필요한 파일이 쌓이게 된다.
- 글로벌 설치인 경우에는 버전 관리가 필요하고, 별도로 삭제하지 않으면 계속 남아 있다.
[ npx ]
- 로컬, 글로벌 설치가 필요 없으며 최신 버전을 실행한다.
npx create-react-app my-app
- 그래서 위와 같이 프로젝트 초기 세팅에서 사용된다.
현재는 boilerplate를 만들고 있는데, Vue 기준으로 npx를 통해 만들게 되면 소개해보고자 한다.