#WebpackConfig Настройки конфигурации для сборки webpack
npm i -D @suhushinas/webpack-config
webpack.config.js
const path = require('path');
const {configs, merge} = require('@suhushinas/webpack-config');
const {asset, base, html, optimization, script, style, svg} = configs;
/**
* Получить конфигурацию webpack.
* @param env Окружение.
* @param argv Аргументы
* @returns {*} Конфигурация webpack.
*/
function webpackConfig(env, argv) {
const {mode} = argv;
const root = __dirname;
const options = {
dist: path.join(root, 'www'),
mode,
pages: ['index'],
public: path.join(root, 'public'),
root,
src: 'src',
};
const customConfig = {
...
};
return merge(
asset(options),
base(options),
html(options),
optimization(options),
script(options),
style(options),
svg(options),
customConfig
);
}
module.exports = webpackConfig;
Опция | Тип | Описание |
---|---|---|
dist | string | Путь сборки проекта |
mode | 'development' /'production' |
Режим сборки |
pages | string[] | Список точек входа для сборки HTML |
public | string | Путь публичной папки проекта |
root | string | Путь корня проекта |
src | string | Путь папки исходных кодов проекта |