如何从 webpack 终端输出中抑制构建的模块?
Posted
技术标签:
【中文标题】如何从 webpack 终端输出中抑制构建的模块?【英文标题】:How to suppress built modules from webpack terminal output? 【发布时间】:2017-08-17 06:11:41 【问题描述】:当使用 webpack2.x 构建我的项目时,终端控制台的构建日志是这样的:
Hash: d09758ddb088e1f8cd3b
Version: webpack 2.2.1
Time: 9450ms
Asset Size Chunks Chunk Names
app.d09758ddb088e1f8cd3b.js 28.7 kB 0 [emitted] app
vendor.d09758ddb088e1f8cd3b.js 206 kB 1 [emitted] vendor
style.d09758ddb088e1f8cd3b.css 1.89 kB 0 [emitted] app
index_bundle.html 852 bytes [emitted]
[1] ./~/vue/dist/vue.common.js 226 kB 1 [built]
[1] ./~/vue/dist/vue.common.js 226 kB 1 [built]
[3] ./~/vue-loader/lib/component-normalizer.js 1.12 kB 0 [built]
[4] ./~/process/browser.js 5.3 kB 1 [built]
[5] ./~/lodash/lodash.js 540 kB 1 [built]
[7] ./~/axios/index.js 40 bytes 1 [built]
[8] ./~/vue-router/dist/vue-router.common.js 56.1 kB 1 [built]
我怎样才能删除像./~/vue/dist/vue.common.js 226 kB 1 [built]
这样的消息并得到这个输出:
Hash: d09758ddb088e1f8cd3b
Version: webpack 2.2.1
Time: 9450ms
Asset Size Chunks Chunk Names
app.d09758ddb088e1f8cd3b.js 28.7 kB 0 [emitted] app
vendor.d09758ddb088e1f8cd3b.js 206 kB 1 [emitted] vendor
style.d09758ddb088e1f8cd3b.css 1.89 kB 0 [emitted] app
index_bundle.html 852 bytes [emitted]
【问题讨论】:
【参考方案1】:您可以使用stats
选项maxModules
并将其设置为0
,这样它就不会显示任何已构建的模块。此选项当前未记录。在你的 webpack 配置中添加:
stats:
maxModules: 0
理论上你应该可以使用 modules: false
和 chunkModules: false
但这似乎不适用于 webpack CLI,至少它适用于 webpack-dev-middleware
。
该选项现在记录在Configuration - Stats。
【讨论】:
【参考方案2】:使用 webpack node.js API:
const compiler = webpack(config);
compiler.run((err, stats) =>
if (err)
console.error(err.stack || err);
if (err.details) console.error(err.details);
process.exit(1);
process.stdout.write(stats.toString(
chunks: false,
colors: true
) + '\n');
if (stats.hasErrors())
process.exit(2);
);
使用 webpack CLI 时,可以尝试--hide-modules
选项。
【讨论】:
【参考方案3】:由于--hide-modules
似乎已被删除,请将以下内容添加到您的 webpack.config.js:
stats:
modules: false
此选项记录在此:Stats | webpack
【讨论】:
这对我有用,我在最新的 webpack ATM 上`"webpack": "^5.65.0", "webpack-cli": "^4.9.1"`。非常感谢。【参考方案4】:实际上,有很多选项可以配置你的 webpack cli 输出。您可以在webbapck.config
文件中的stats
对象中设置它。不幸的是,我找不到隐藏您想要的线条的选项。
请参阅Docs 了解设置 cli 输出
【讨论】:
以上是关于如何从 webpack 终端输出中抑制构建的模块?的主要内容,如果未能解决你的问题,请参考以下文章