Webpack 4 - Сохранить структуру папок для пакетов

Я не могу сохранить структуру папок для моих выходных пакетов.

Я пытался использовать [path] заполнитель, но это не работает. Есть похожая тема, но она не отвечает на мой вопрос.

Я использую: Webpack 4.28.4 и Node v10.15.0.

Структура входной папки:

src
|  
+-- blog
|  |
|  +-- index.js
|  
+-- index.js

webpack.config.js:

  entry: {
    main: './src/index.js',
    blog: './src/blog/index.js'
  },
  output: {
    filename: '[path][name].[contenthash].js',
    path: path.resolve(__dirname, 'dist')
  },

На выходе я получил:

dist
|  
+-- [path]blog.c63bf8952b90c5e5ba3e.js
|  
+-- [path]main.9ad0ffac44f9e88f76ce.js

Но я ожидаю:

dist
|  
+-- blog
|  |
|  +-- blog.c63bf8952b90c5e5ba3e.js
|  
+-- main.9ad0ffac44f9e88f76ce.js

Примечание: я использовал [name] заполнитель для идентификации файлов, но, наконец, я его удалю.

2 ответа

Для тех, кто ищет решение

Только один, который я нашел, использует путь в качестве имени записи (возможно, существует какой-то плагин). как в ответе выше.

Я сделал простое преобразование массива, которое позволяет мне преобразовать путь к записям.

и теперь в конфигурации вашего веб-пакета вы можете:

      module.exports = {
    mode: 'production',
    entry: entries,
    output:{
        path: path.resolve(__dirname, 'static_compiled'),
        filename: "[name].js"
    },
    ...
}

Если вы измените name вашего входного блока, чтобы он был путем в вашем выходном каталоге, который вы хотели бы видеть, когда он будет выводиться, это поможет вам.

Например, если вы переименовали свою запись в блоге в blog/blog как показано ниже, когда webpack генерирует пакет и выводит его в выходной каталог, поскольку имя файла blog/blog, результат будет dist/blog/blog.[contenthash].js. Другой файл по-прежнему будетmain.[contenthash].js.

Это должно помочь вам:

 `entry: {
    main: './src/index.js',
    'blog/blog': './src/blog/index.js'
  },
  output: {
    filename: '[name].[contenthash].js',
    path: path.resolve(__dirname, 'dist')
  }`
Другие вопросы по тегам