웹팩 핸드북 : https://joshua1988.github.io/webpack-guide/
Node.js는 브라우저 밖에서도 자바스크립트를 실행할 수 있는 환경을 의미합니다. Node.js가 나오기 전까지는 자바스크립트가 브라우저의 동작을 제어하는데 사용되었고 브라우저에서만 실행할 수 있었지만 이제는 Node.js로 자바스크립트를 브라우저 밖에서도 실행할 수 있게 되었다.
NPM(Node Package Manager)은 Node.js를 설치하면 자동으로 설치가 된다. NPM은 명령어로 자바스크립트 라이브러리를 설치하고 관리할 수 있는 패키지 매니저로, 전 세계 자바스크립트 개발자들이 모두 자바스크립트 라이브러리를 공개된 저장소에 올려놓고 npm 명령어로 편하게 다운로드 가능하다.
다운로드 : https://nodejs.org/ko/
Node.js 설치시 NPM도 함께 설치가 되며, 터미널 실행 후 아래 명령어를 통해 버전 체크하여 설치가 정상으로 되었는지 확인 가능하다.
$ node -v
v12.16.1
$ npm -v
6.13.4
VScode에서 터미널 명령어 정상적으로 실행이 되지 않은 경우
bash
가 아닌지 확인 필요.
$ npm init
실행하면 터미널 화면을 통하여 아래 항목를 설정하는 단계를 거처 최종적으로 package.json
파일로 생성한다.
순서 | 항목 |
---|---|
1 | package name |
2 | version |
3 | description |
4 | entri point |
5 | test command |
6 | git repository |
7 | keywords |
8 | author |
9 | license |
그러나 일반적으로 터미널 상태에서 설정하기 보다 package.json
파일에서 직접 변경하는 것이 직관적이므로 $ npm init -y
명령어를 통하여 터미널 설정화면을 생략하고 package.json
생성한다.
$ npm install 패키지명
$ npm install jquery
이다.node_modules
생성이 된다.node_modules
하위 폴더(예 : jquery)에서 찾을 수 있다.package.json
의 Dependencies
항목에서 가능하다.$ npm uninstall 패키지명
실행하면 설치된 패키지 관련된 파일이 모두 삭제가 된다.
--global
사용한다.$ npm install jquery --global
이다.# window
%USERPROFILE%\AppData\Roaming\npm\node_modules
# mac
/usr/local/lib/node_modules
NPM 지역 설치시 라이브러리가 배포용(dependencies) 또는 개발용(devDependencies) 구분해야된다. 예를 들어, jquery
와 같이 화면 로직과 직접적으로 관련된 라이브러리는 배포용으로 설치해야 된다.
이렇게 구분하여 배포시 필요없는 패키지를 build 하지 않으므로 시간 단축과 리소스 관리에 용의하다.
개발용(devDependencies) 구분 되는 패키지는 대표적으로 아래를 참고
패키지명 | 설명 |
---|---|
webpack | 빌드 도구 |
eslint | 코드 문법 검사 도구 |
imagemin | 이미지 압축 도구 |
scss | CSS 전처리기 |
devDependencies
설치--save-dev
또는 -D
키워드를 사용한다.$ npm install scss -D
이다.package.json
의 devDependencies
항목에서 가능하다.