2015-06-10 106 views
48

我想知道是否有配置选项告诉webpack只记录终端的“重要信息”。差不多就只有错误和警告,并非所有的这样的:Webpack:沉默输出

output of terminal with webpack

这里还有这么多的输出!会喜欢压制常见的东西,只有webpack输出警告/错误。想要解决方案webpackwebpack-dev-serverkarma-webpack

注意:我试过noInfo: truequiet: true但这似乎没有办法。


编辑:我想这是不可能的,所以我创建了GitHub上的问题:https://github.com/webpack/webpack/issues/1191

+0

看起来像在命令行上'noInfo'选项实际上是'--info'的反转,默认为'true',所以如果你运行'webpack-dev-server --info false '它应该让你更接近你想要的地方。 – naartjie

+0

这似乎是为webpack-dev-server做...现在,如果我能为我的测试得到它:-) – kentcdodds

+1

如果任何人的好奇,这里是我现在执行的:'NODE_ENV =开发webpack-dev-server -content-base应用程序/ - 端口8888 - 色彩 - 进度--info false' – kentcdodds

回答

22

当加入这个功能我不知道,但我只是在the docs中注意到您可以添加webpackMiddleware属性,并且您可以指定noInfo: true。这样做可以消除所有的噪音!但是当出现错误时您仍然可以看到输出。好极了!

6

如果您使用的是webpack-dev-middleware,则可以将noInfo: true作为第二个参数放入对象中。 另外假设您还有一台运行的节点/快递服务器。

enter image description here

干杯。

+0

我发布这个为其他人在稍微不同的配置类似的问题因为Google搜索在这里领先他们。 – leocreatini

+0

您还可以在webpack.config.js的'devServer'配置项中添加'noInfo:true'。 –

+0

只有一个为我工作。也适用于webpackMiddleware。谢谢,垃圾输出令我疯狂。 – Doa

1

如果您是直接使用的WebPack API,和你打电话stats.toString(),那么你可以传递参数,尽量减少噪音:

webpack(config).watch(100, (err, stats) => { 
    console.log(stats.toString({chunks: false})) 
}) 
29

在我的WebPack配置,这样做可以降低我的增量编译时间减少8秒,并且输出消音。其中主要的一个是chunks: false

发挥与它满足您的需求

module.exports = { 
devServer: { 
    stats: { 
    colors: true, 
    hash: false, 
    version: false, 
    timings: false, 
    assets: false, 
    chunks: false, 
    modules: false, 
    reasons: false, 
    children: false, 
    source: false, 
    errors: false, 
    errorDetails: false, 
    warnings: false, 
    publicPath: false 
    } 
} 
} 
+4

非常棒!要禁用的关键是'哈希,版本,时间,资产,块'。 –

3

你并不需要所有的。所有你需要的是

其实,这两个工作很好。

stats: 'errors-only', 

位于导出对象的末尾。

也可以使用stats: 'minimal',它只在出现错误或新编译时输出。阅读更多从official documentation of Webpack.