Webpack에서 여러 CSS 번들

여러 진입점(entry point)이 하나의 파일로 합쳐지면, CSS 어셈블리 파일도 그들을 위한 하나가 됩니다. JavaScript를 여러 번들로 빌드하면, 각각 고유의 CSS 파일을 갖게 될 것입니다.

예제를 살펴봅시다. 하나의 진입점과 그에 연결된 몇 가지 스타일 파일이 있다고 가정해 보겠습니다:

src/test1.jsimport './styles1-1.css';
import './styles1-2.css';

두 번째 진입점에도 스타일을 불러와 봅시다:

src/test2.jsimport './styles2-1.css';
import './styles2-2.css';

설정을 작성해 봅시다:

webpack.config.jsexport default {
  context: path.resolve( 'src'),
  entry: {
    test1: './test1.js',
    test2: './test2.js'
  },
  output: {
    filename: '[name].[contenthash].js',
    path: path.resolve('dist'),
  },
  plugins: [new MiniCssExtractPlugin({
    filename: '[name].[contenthash].css'
  })],
  module: {
    rules: [
      {
        test: /\.css$/i,
        use: [MiniCssExtractPlugin.loader, 'css-loader'],
      },
    ],
  },
};

이러한 설정의 결과로, 두 개의 CSS 번들이 빌드됩니다: test1.398db7afe3b52e94bb25.css 와 test2.1d12c304c284a752cb9a.css.

Задание 1

세 개의 진입점을 만드세요. 각각에 CSS 파일을 연결하세요. 빌드하고 결과를 확인하세요.