Мне нужно использовать Webpack для одного из моих проектов для создания внешних пакетов для js, css и других статических ресурсов. Это хорошо работает, но на ранних стадиях проекта у меня есть только несколько CSS и статических изображений, но нет файлов JS. Вот мой полный webpack.config.js
const Webpack = require("webpack");
const Glob = require("glob");
const path = require("path");
const CopyWebpackPlugin = require("copy-webpack-plugin");
const configurator = {
entries: function(){
var entries = {
application: [
'./assets/dummy.js',
],
}
return entries
},
plugins() {
var plugins = [
new CopyWebpackPlugin([{from: "./assets",to: ""}], {copyUnmodified: true,ignore: ["css/**", "js/**", "**.js"] }),
];
return plugins
},
moduleOptions: function() {
return {
rules: [
]
}
},
buildConfig: function(){
const env = process.env.NODE_ENV || "development";
var config = {
mode: env,
entry: configurator.entries(),
output: {filename: "[name].[hash].js", path: `${__dirname}/public/assets`},
plugins: configurator.plugins(),
module: configurator.moduleOptions()
}
return config
}
}
module.exports = configurator.buildConfig()
Практически для меня это копирование ресурсов в общедоступный каталог. У меня пока нет javascript, но они будут в будущем. Итак, я попытался прокомментировать entry
, установив его на пустую или пустую строку, но безуспешно. Кажется, что Webpack нужно так плохо обрабатывать js-файлы. Мое текущее решение - создать пустой файл dummy.js
и передать его в Webpack. Досадно, что он генерирует файл размером 3,3 КБ application.afff4a3748b8d5d33a3a.js
с некоторым js-кодом, хотя мой исходный js-файл полностью пуст.
Я понимаю, что это крайний вариант использования Webpack, и Webpack был в первую очередь создан для обработки javascript, но держу пари, что многие все еще используют его не только для объединения javascript. Итак, мой вопрос, есть ли лучший, более элегантный способ пропустить пакетирование файлов js в Webpack?
приписка
Я думаю, что я нашел связанный вопрос без ответа здесь Как заставить WebPack копировать библиотеку вместо связывания?
приписка # 2
Предложенный дублирующий вопрос имеет принятый ответ с неверной конфигурацией Webpack Invalid configuration object.
, поэтому я не могу использовать его для решения своей проблемы.
Кроме того, ответ гласит
webpack создаст фиктивный файл javascript
и я специально спрашиваю, как избежать создания ненужных файлов.