非常教程

Webpack参考手册

组态 | Configuration

目标 | Target

webpack 可以编译多个环境或目标。要了解target详细信息,请阅读目标概念页面。

target

string | function(compiler)

侵入 webpack 以针对特定的环境。

string

以下字符串值通过以下方式支持 WebpackOptionsApply

选项

描述

async-node

编译为类 Node.js 环境可用(使用 fs 和 vm 异步加载分块)

atom

electron-main 的别名

electron

electron-main 的别名

electron-main

编译为 Electron 主进程。

electron-renderer

编译为 Electron 渲染进程,使用 JsonpTemplatePlugin, FunctionModulePlugin 来为浏览器环境提供目标,使用 NodeTargetPlugin 和 ExternalsPlugin 为 CommonJS 和 Electron 内置模块提供目标。

node

编译为类 Node.js 环境可用(使用 Node.js require 加载 chunk)

node-webkit

编译为 Webkit 可用,并且使用 jsonp 去加载分块。支持 Node.js 内置模块和 nw.gui 导入(实验性质)

web

编译为类浏览器环境里可用**(默认)**

webworker

编译成一个 WebWorker

例如,当 target 设置为 "electron"webpack 引入多个 electron 特定的变量。有关使用哪些模板和 externals 的更多信息,你可以直接参考 webpack 源码。

function

如果传入一个函数,此函数调用时会传入一个 compiler 作为参数。如果以上列表中没有一个预定义的目标(target)符合你的要求,请将其设置为一个函数。

例如,如果你不想要他们应用的任何插件:

const options = {
  target: () => undefined
};

或者你可以应用你想要的特定插件:

const webpack = require("webpack");

const options = {
  target: (compiler) => {
    compiler.apply(
      new webpack.JsonpTemplatePlugin(options.output),
      new webpack.LoaderTargetPlugin("web")
    );
  }
};
Webpack

webpack 是一个模块打包器。webpack 处理带有依赖关系的模块,生成一系列表示这些模块的静态资源。

主页 https://webpack.js.org/
源码 https://github.com/webpack/webpack
发布版本 3.8.1

Webpack目录

1.指南 | Guides
2.接口 | API
3.概念 | Concepts
4.组态 | Configuration
5.装载 | Loaders