如何从webpack终端输出中抑制内置模块?

时间:2017-03-24 10:36:01

标签: node.js webpack webpack-2

使用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]

4 个答案:

答案 0 :(得分:1)

使用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选项。

答案 1 :(得分:0)

实际上,如何配置webpack cli输出有很多选择。您可以在stats文件的webbapck.config对象中进行设置。不幸的是,我无法找到隐藏你想要的行的选项。

有关设置cli输出的信息,请参阅Docs

答案 2 :(得分:0)

您可以使用stats选项maxModules并将其设置为0,这样就不会显示任何已构建的模块。此选项目前未记录。在你的webpack配置中添加:

stats: {
  maxModules: 0
}

理论上,您应该可以使用modules: falsechunkModules: false,但这似乎不适用于webpack CLI,至少它适用于webpack-dev-middleware

该选项现已记录在Configuration - Stats

答案 3 :(得分:0)

由于--hide-modules似乎已删除,因此将以下内容添加到webpack.config.js中:

stats: {
    modules: false
}

此选项记录在这里:Stats | webpack