[javascript] Webpack으로 작업 흐름 구성하기

웹 개발에서 효율적으로 작업하기 위해서는 모듈 번들러인 Webpack을 사용하여 프로젝트를 구성하는 것이 좋습니다. Webpack은 여러 파일을 하나로 번들링하고, 필요한 리소스들을 최적화하여 웹 애플리케이션을 더욱 효율적으로 제작할 수 있도록 도와줍니다. 이제 Webpack을 사용하여 작업 흐름을 구성하는 방법에 대해 알아보도록 하겠습니다.

1. 프로젝트 초기화

먼저, Webpack을 사용하기 위해 프로젝트를 초기화해야 합니다. 폴더를 생성하고 해당 폴더에서 다음 명령어를 실행하여 package.json 파일을 생성합니다.

npm init -y

2. Webpack 설치

이제 Webpack을 설치합니다. 다음 명령어를 실행하여 Webpack과 Webpack CLI를 설치합니다.

npm install webpack webpack-cli --save-dev

3. Webpack 설정 파일 작성

Webpack 설정 파일인 webpack.config.js를 생성하여 작업에 필요한 설정을 추가합니다. 아래는 기본적인 설정 예시입니다.

const path = require('path');

module.exports = {
  entry: './src/index.js', // 진입점(entry) 파일
  output: {
    path: path.resolve(__dirname, 'dist'), // 번들링된 파일 출력 경로
    filename: 'bundle.js', // 번들링된 파일 이름
  },
  module: {
    rules: [
      {
        test: /\.js$/, // JS 파일에 대해서만 로더를 적용
        exclude: /node_modules/, // node_modules 폴더는 제외
        use: {
          loader: 'babel-loader', // Babel 로더 사용
          options: {
            presets: ['@babel/preset-env'], // Babel preset
          },
        },
      },
    ],
  },
};

4. 필요한 로더 추가

추가적인 로더를 사용하고 싶다면, 해당 로더를 설치하고 webpack.config.js 파일에 추가해야 합니다. 예를 들어, CSS 파일을 번들링하기 위해서는 css-loaderstyle-loader를 설치하고 설정 파일에 추가하는 작업이 필요합니다.

npm install css-loader style-loader --save-dev
module.exports = {
  // ... 이전 설정
  module: {
    rules: [
      // ... 이전 로더 설정
      {
        test: /\.css$/, // CSS 파일에 대해서만 로더를 적용
        use: ['style-loader', 'css-loader'], // 사용할 로더 순서
      },
    ],
  },
};

5. 스크립트 작성

이제 작성한 Webpack 설정 파일을 기반으로 스크립트를 작성하여 번들링을 실행합니다. package.json 파일의 scripts 항목에 다음과 같이 빌드 스크립트를 추가합니다.

"scripts": {
  "build": "webpack --config webpack.config.js"
}

이제 다음 명령어를 실행하면 Webpack으로 프로젝트를 번들링할 수 있습니다.

npm run build

결론

이렇게 Webpack을 사용하여 작업 흐름을 구성할 수 있습니다. Webpack을 활용하면 모듈 번들링, 리소스 최적화 등을 쉽게 수행할 수 있으며, 프로젝트를 효율적으로 관리할 수 있습니다. 자세한 내용은 Webpack 공식 문서를 참고해주세요.

참고 자료