Несколько экземпляров extract-text-webpack-plugin создает несколько файлов комплекта, НО оба с одинаковым содержимым

Я пытаюсь создать два отдельных файла пакета с помощью веб-пакета и extract-text-webpack-plugin,

Первый глобальный пакет (global.module.css), который компилирует все CSS / SCSS, используемые в приложении. Это работает нормально. Тем не менее, я также хочу создать отдельный файл пакета (resources.bundle.css) который извлекает только CSS-файлы из папки, вложенной в приложение и называемой Resources, (Мне нужно использовать стили из Resource папка отдельно.) Таким образом, resources.bundle.css является своего рода подразделом содержания global.module.css,

Я успешно экспортировал два отдельных файла пакета, инициировав два экземпляра ExtractTextPlugin:

const extractSCSSModules = new ExtractTextPlugin('global.bundle.css')
const resourceExtractSCSS = new ExtractTextPlugin('resources.bundle.css')

Однако оба файла имеют одинаковое содержимое. При определении модулей с modules.exportsЯ попытался создать два отдельных загрузчика, каждый с соответствующей точкой входа (один для всего приложения и один для Resources папка), вот так:

 {
      test: /\.module\.(css|scss)$/,
      use: ExtractTextPlugin.extract({
        fallback: 'style-loader',
        use: [
          {
            loader: 'css-loader',
            query: {
              modules: true,
              importLoaders: true,
              localIdentName: '[name]__[local]__[hash:base64:5]',
            },
          },
          {
            loader: 'postcss-loader',
            options: {
              plugins: 'autoprefixer',
            },
          },
          'sass-loader',
          {
            loader: 'sass-resources-loader',
          },
        ],
      }),
      include: path.join(ROOT_PATH, 'frontend', 'js'),
      exclude: path.join(ROOT_PATH, 'frontend', 'css'),
    },
{
      test: /\.module\.(css|scss)$/, 
      use: magazineSCSSExtract.extract({
          fallback: 'style-loader',
          use: ['css-loader', 'sass-loader'],
      }),
      include: path.join(ROOT_PATH, 'frontend', 'js', 'nestedFolder', 'nestedFolder', 'Resources'),
},

Тем не менее, потому что первый экземпляр ExtractTextPlugin проверяет все файлы css/scss, второй экземпляр, где я указываю второе имя пути, просто повторяется. Таким образом, он отменяется первым экземпляром.

Итак, как мне создать отдельный экземпляр ExtractTextPlugin что приведет к отдельным пакетным файлам с различным содержанием? Нужен ли отдельный модуль для этого? Повторим еще раз: проблема заключается не в том, как создать отдельные файлы комплекта, а в том, как это сделать на основе расположения файла, даже если они оба тестируют файлы CSS / SCSS и даже если содержимое второго комплекта уже включено в первый. Как это в настоящее время, include не приводит к какому-либо разделению между результатами запуска загрузчиков стилей.

Спасибо!

0 ответов

Другие вопросы по тегам