Конфигурация
Вы могли заметить, что конфигурации webpack не похожи друг на друга. Это потому, что файл конфигурации webpack — это JavaScript-файл, который экспортирует конфигурацию webpack configuration. Эта конфигурация затем обрабатывается webpack на основе её определённых свойств.
Поскольку это стандартный модуль Node.js CommonJS, вы можете сделать следующее:
- Импортировать другие файлы через
require(...) - использовать утилиты из npm через
require(...) - использовать выражения JavaScript управления потоком, например, оператор
?: - использовать константы или переменные для часто используемых значений
- создавать и выполнять функции для генерации части конфигурации
Используйте эти возможности при необходимости.
Хотя они технически возможны, следующие практики следует избегать:
- Доступ к аргументам командной строки, когда используется webpack CLI (вместо этого напишите собственный CLI или используйте
--env) - Экспорт недетерминированных значений (дважды вызывая webpack, следует получить одинаковые выходные файлы)
- Создание длинных конфигураций (вместо этого разделите конфигурацию на несколько файлов)
Приведённые ниже примеры показывают, как конфигурация webpack может быть одновременно выразительной и настраиваемой, потому что это код:
Вводная конфигурация
webpack.config.js
const path = require('path');
module.exports = {
mode: 'development',
entry: './foo.js',
output: {
path: path.resolve(__dirname, 'dist'),
filename: 'foo.bundle.js',
},
}; См.: Раздел конфигурации для всех поддерживаемых параметров конфигурации
Несколько целей
Вместе с экспортом одной конфигурации как объекта, функции или Promise, вы можете экспортировать несколько конфигураций.
См.: Экспорт нескольких конфигураций
Использование других языков конфигурации
Webpack принимает файлы конфигурации, написанные на нескольких языках программирования и данных.
См.: Языки конфигурации
© JS Foundation and other contributors
Licensed under the Creative Commons Attribution License 4.0.
https://webpack.js.org/concepts/configuration