Webpack에서 레이아웃에 여러 스타일 번들 사용하기

이제 여러 진입점이 있고 각각이 자신의 번들로 번들링된다고 가정해 봅시다. 각 진입점에는 자신의 CSS 파일이 연결되어 있다고 가정합니다. 이미 알고 계시다시피, 이 경우 각 진입점마다 자신의 CSS 번들이 생성됩니다. Webpack은 이러한 각 번들을 자동으로 연결합니다.

실제로 확인해 봅시다. 첫 번째 진입점에 스타일을 연결해 보겠습니다:

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'
    }),
    new HtmlWebpackPlugin(),
  ],
  module: {
    rules: [
      {
        test: /\.css$/i,
        use: [MiniCssExtractPlugin.loader, 'css-loader'],
      },
    ],
  },
};

결과적으로 레이아웃 파일은 다음과 같은 모습이 됩니다:

dist/index.html<!DOCTYPE html>
<html>
  <head>
    <meta charset="utf-8">
    <title>Webpack App</title>
    <script defer src="test1.18e856b0da2f7862ab19.js"></script>
    <script defer src="test2.d12ade182c2989b4efa8.js"></script>
    <link href="test1.398db7afe3b52e94bb25.css" rel="stylesheet">
    <link href="test2.1d12c304c284a752cb9a.css" rel="stylesheet">
  </head>
  <body>
    
  </body>
</html>
Задание 1

세 개의 진입점을 만드세요. 각 진입점에 세 개의 CSS 파일을 연결하세요. 번들링을 수행하세요. 모든 번들이 자동으로 연결되는지 확인하세요.