Режим
Предоставление параметра конфигурации mode сообщает webpack использовать встроенные оптимизации соответствующим образом.
string = 'production': 'none' | 'development' | 'production'
Использование
Укажите параметр mode в конфигурации:
module.exports = {
mode: 'development',
}; или передайте его в качестве аргумента командной строки (CLI):
webpack --mode=development
Поддерживаются следующие строковые значения:
| Параметр | Описание |
|---|---|
development |
Устанавливает process.env.NODE_ENV для DefinePlugin со значением development. Включает удобные имена для модулей и пакетов. |
production |
Устанавливает process.env.NODE_ENV для DefinePlugin со значением production. Включает детерминированные сжатые имена для модулей и пакетов, FlagDependencyUsagePlugin, FlagIncludedChunksPlugin, ModuleConcatenationPlugin, NoEmitOnErrorsPlugin и TerserPlugin. |
none |
Отключает все параметры оптимизации по умолчанию |
Если параметр не задан, webpack устанавливает production в качестве значения по умолчанию для mode.
Режим: разработка
// webpack.development.config.js
module.exports = {
mode: 'development',
}; Режим: производство
// webpack.production.config.js
module.exports = {
mode: 'production',
}; Режим: нет
// webpack.custom.config.js
module.exports = {
mode: 'none',
}; Если вы хотите изменить поведение в соответствии с переменной mode внутри webpack.config.js, вам нужно экспортировать функцию вместо объекта:
var config = {
entry: './app.js',
//...
};
module.exports = (env, argv) => {
if (argv.mode === 'development') {
config.devtool = 'source-map';
}
if (argv.mode === 'production') {
//...
}
return config;
};
© JS Foundation and other contributors
Licensed under the Creative Commons Attribution License 4.0.
https://webpack.js.org/configuration/mode