2015-06-10 102 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.