webpack本质上是一个现代 JavaScript 应用程序的静态模块打包器(Module bundler)。
本地安装
npm install --save-dev webpack
npm install --save-dev webpack@<version>
对于大多数项目,建议本地安装。这可以使我们在引入破坏式变更(breaking change)的依赖时,更容易分别升级项目。通常,webpack 通过运行一个或多个 npm scripts,会在本地 node_modules
目录中查找安装的 webpack:
"scripts": {
"start": "webpack --config webpack.config.js"
}
当你在本地安装 webpack 后,你能够从
node_modules/.bin/webpack
访问它的 bin 版本。
Node 8.2+ 版本提供的 npx 命令,可以运行在初始安装的 webpack 包(package)的 webpack 二进制文件(./node_modules/.bin/webpack 在本地 node_modules 目录中查找安装的 webpack)
./node_modules/.bin/webpack
简化为
npx webpack
全局安装
以下的 NPM 安装方式,将使 webpack
在全局环境下可用:
npm install --global webpack
终端测试
npx webpack src/index.js --output dist/bundle.js
不推荐全局安装 webpack。这会将你项目中的 webpack 锁定到指定版本,并且在使用不同的 webpack 版本的项目中,可能会导致构建失败。
配置文件
大多数项目会需要很复杂的设置,这就是为什么 webpack 要支持配置文件。这比在终端(terminal)中输入大量命令要高效的多,所以让我们创建一个取代以上使用 CLI 选项方式的配置文件
npx webpack --config webpack.config.js
注意,当在 windows 中通过调用路径去调用 webpack 时,必须使用反斜线()。例如 node_modules.bin\webpack --config webpack.config.js。
npm 脚本(npm script)
考虑到用 CLI 这种方式来运行本地的 webpack 不是特别方便,我们可以设置一个快捷方式。在 package.json 添加一个 npm 脚本(npm script):
package.json
{
...
"scripts": {
"build": "webpack"
},
...
}
现在,可以使用 npm run build
命令,来替代我们之前使用的 npx
命令。注意,使用 npm 的 scripts
,我们可以像使用 npx
那样通过模块名引用本地安装的 npm 包。这是大多数基于 npm 的项目遵循的标准,因为它允许所有贡献者使用同一组通用脚本(如果必要,每个 flag 都带有 --config
标志)。
通过向 npm run build 命令和你的参数之间添加两个中横线,可以将自定义参数传递给 webpack,例如:npm run build -- --colors。
网友评论