Целевая среда
webpack может компилировать для нескольких сред или целевых сред. Чтобы подробно узнать, что такое target, прочитайте страницу концепции целевых сред.
target
string function (compiler)
Указывает webpack на целевую среду.
string
Следующие строковые значения поддерживаются через WebpackOptionsApply:
| Вариант | Описание |
|---|---|
|
Компиляция для использования в среде, похожей на Node.js (использует | Компиляция для использования в среде, похожей на Node.js (использует fs и vm для асинхронной загрузки фрагментов) |
|
Компиляция для Electron для основного процесса. | Компиляция для Electron для основного процесса. |
|
Компиляция для Electron для процесса рендеринга, предоставляя целевую среду с использованием | Компиляция для Electron для процесса рендеринга, предоставляя целевую среду с использованием JsonpTemplatePlugin , FunctionModulePlugin для браузерных сред и NodeTargetPlugin и ExternalsPlugin для CommonJS и встроенных модулей Electron. |
|
Компиляция для Electron для процесса рендеринга, предоставляя целевую среду с использованием | Компиляция для Electron для процесса рендеринга, предоставляя целевую среду с использованием NodeTemplatePlugin с asyncChunkLoading установленным в true , FunctionModulePlugin для браузерных сред и NodeTargetPlugin и ExternalsPlugin для CommonJS и встроенных модулей Electron. |
|
Компиляция для использования в среде, похожей на Node.js (использует Node.js | Компиляция для использования в среде, похожей на Node.js (использует Node.js require для загрузки фрагментов) |
|
Компиляция для использования в WebKit и использование JSONP для загрузки фрагментов. Позволяет импортировать встроенные модули Node.js и | Компиляция для использования в WebKit и использование JSONP для загрузки фрагментов. Позволяет импортировать встроенные модули Node.js и nw.gui (экспериментальная функция) |
|
Компиляция для использования в браузерной среде (по умолчанию) | Компиляция для использования в браузерной среде (по умолчанию) |
|
Компиляция как WebWorker | Компиляция как WebWorker |
Например, когда target установлено в "electron-main", webpack включает несколько электронных переменных. Для получения дополнительной информации о используемых шаблонах и внешних зависимостях вы можете обратиться к исходному коду webpack.
function
Если передается функция, она вызывается с компилятором в качестве параметра. Установите target в function, если ни одна из предопределенных целевых сред из списка выше не соответствует вашим потребностям.
Например, если вы не хотите применять какие-либо плагины:
const options = {
target: () => undefined
}; Или вы можете применить только нужные плагины:
const webpack = require('webpack');
const options = {
target: (compiler) => {
compiler.apply(
new webpack.JsonpTemplatePlugin(options.output),
new webpack.LoaderTargetPlugin('web')
);
}
};
© JS Foundation and other contributors
Licensed under the Creative Commons Attribution License 4.0.
https://v4.webpack.js.org/configuration/target