우리는 최신 프레임워크에서 또는 자바스크립트 코드를 작성 시 많이도 ..
js파일을 분리하여 모듈단위로 작성 및 작업을 하게 되는데... (a.js, b.js, c.js, ... n.js)
브라우저가 이 분산된 많은 자원들을 불러올 때..
이러한 파일자원을 받아오는데에 네트워크요청이 많아져서 응답이 늦어지게 될 수도 있다..
비단 js모듈 뿐만 아니라 HTML, CSS, image등도 포함해서..
이를 하나의 결과물로 번들링을 도와주는 도구가 웹팩
번들링 : 위의 HTML, CSS, image, js 등 웹 애플리케이션을 구성하는 몇십 몇백개의 자원들을 하나의 파일로
병합 및 압축해주는 동작
// 운영환경에서 사용할 일이 없기에 dev의존성으로 웹팩과 웹팩 cli를 설치
npm i -D webpack webpack-cli
// package.json로 프로젝트를 관리 할 수 있게 초기화
npm init -y
// 해당 프로젝트 경로에서 번들링 실행1
npx weback --entry ./src/index.js --output-path ./dist
-> main.js생성
// 해당 프로젝트 경로에서 번들링 실행2 (개발 테스트용도)
npx weback --entry ./src/index.js --output-path ./dist --mode development
-> 병합된 파일을 개발자(사람)의 눈으로 가독성있게 개행 형식으로 압축해줌
npm run webpack
//또는 package.json scrips 명령어를 추가 "build" : "weback"
npm run build
const path = require('path');
module.exports = {
entry: './src/index.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'bundle.js',
},
};