在webpack --watch我只看到第一个错误

ant*_*tfx 3 javascript webpack

webpack使用该--watch选项编译项目时,如果项目在less编译器中有错误,我会在输出中看到该错误.一旦我纠正错误webpack重新编译,一切都很好.

但是,如果文件中存在多个错误,并且我只修复其中一个错误,则在webpack重新编译代码时它不会显示新的错误消息,实际上控制台根本不会更新.

例如:

  1. less 文件有两个错误并保存文件
  2. webpack --watch 尝试编译该文件并失败,显示第一个错误
  3. 我修复了第一个错误并保存
  4. webpack 显示第二个错误

webpack如果第二次失败,如何显示更新后的构建错误?

ant*_*tfx 5

似乎此选项不可用,webpack cli但您可以轻松创建一个插件来侦听构建事件并输出任何错误,即:

const ConsoleNotifierPlugin = function () {}

ConsoleNotifierPlugin.prototype.compilationDone = (stats) => {
  const log = (error) => {
    console.log(error.error.toString())
  }
  stats.compilation.errors.forEach(log)
}

ConsoleNotifierPlugin.prototype.apply = function (compiler) {
  compiler.plugin('done', this.compilationDone.bind(this))
}
Run Code Online (Sandbox Code Playgroud)

然后将其添加到插件中:

...
plugins: [new ConsoleNotifierPlugin()]
...
Run Code Online (Sandbox Code Playgroud)