此命令生成一个webpack项目
# 此命令生成一个webpack项目# npx webpack init [generation-path] [options]npx webpack init ./my-app --template=defaultmy-app├── src│ └── index.js # runs on server only├── webpack.config.js├── index.html├── README.md├── package-lock.json└── package.json# 按制定配置文件 编译,并告诉 webpack 如何处理 stats# npx webpack build [options]npx webpack build --config ./webpack.config.js --stats verbose
输出系统信息
# 输出系统信息npx webpack info --output=jsonnpx webpack info --output=markdown{"System": {"OS": "macOS 11.5.1","CPU": "(8) arm64 Apple M1","Memory": "837.64 MB / 16.00 GB"},"Binaries": {"Node": {"version": "16.5.0","path": "~/.nvm/versions/node/v16.5.0/bin/node"},"Yarn": {"version": "1.22.10","path": "/opt/homebrew/bin/yarn"},"npm": {"version": "7.19.1","path": "~/.nvm/versions/node/v16.5.0/bin/npm"}},"Packages": {"webpack": {"installed": "5.52.1","wanted": "^5.52.1"},"webpack-cli": {"installed": "4.8.0","wanted": "^4.8.0"}}}## System:- OS: macOS 11.5.1- CPU: (8) arm64 Apple M1- Memory: 529.73 MB / 16.00 GB## Binaries:- Node: 16.5.0 - ~/.nvm/versions/node/v16.5.0/bin/node- Yarn: 1.22.10 - /opt/homebrew/bin/yarn- npm: 7.19.1 - ~/.nvm/versions/node/v16.5.0/bin/npm## Packages:- webpack: ^5.52.1 => 5.52.1- webpack-cli: ^4.8.0 => 4.8.0
初始化一个 loader 示例项目
# npx webpack loader [output-path] [options]npx webpack loader ./my-loader --template=default
生成一个plugin的示例项目
# 生成一个plugin的示例项目# npx webpack plugin [output-path] [options]npx webpack plugin ./my-loader --template=default
# 检查webpack配置npx webpack configtest ./webpack.config.js[webpack-cli] Validate '/Users/xxx/project/test/webpack-demo/webpack.config.js'.[webpack-cli] There are no validation errors in the given webpack configuration.# 运行 webpack 开发服务器。# npx webpack serve [options]npx webpack serve --static --open# webpack watch 监听文件变化# npx webpack watch [options]npx webpack watch --mode developmentnpx webpack --versionnpx webpack --helpnpx webpack info --version# 以 JSON 格式输出 webpack 的运行结果npx webpack --json# 如果你想把 stats 数据存储为 JSON 而非输出npx webpack --json stats.json# 查看编译进度npx webpack --progressnpx webpack --progress=profile# 将 CLI 参数传递给 Node.jsNODE_OPTIONS="--max-old-space-size=4096" webpack
合并多个配置文件
npx webpack --config ./first.js --config ./second.js --merge
输出 compilation文件
https://webpack.docschina.org/api/stats/
# --json=compilation-stats.json 标志告诉# webpack 生成一个包含依赖关系图和其他各种构建信息的 compilation-stats.json 文件。# 通常情况下,--profile 标志也会被添加,这样的话每个 module objects ,# 都会增加一个 profile 部分,它包含了特定模块的统计信息。npx webpack --profile --json=compilation-stats.json
