Webpack 2 eslint-loader自动修复

Dan*_*ani 18 eslint webpack webpack-2

在webpack 1.x中,我可以使用webpack配置中的eslint属性来启用自动修复我的linting错误:

...

module.exports = {
  devtool: 'source-map',
  entry: './src/app.js',
  eslint: {
    configFile: '.eslintrc',
    fix: true
  },

...
Run Code Online (Sandbox Code Playgroud)

但是,在webpack 2.x中,因此我无法使用自动修复功能,因为我不知道在我的webpack配置中将它设置在何处.在我的webpack中使用eslint属性configFile抛出一个WebpackOptionsValidationError.

gle*_*yes 35

使用webpack v2(及更高版本)自动修复linting规则的最常用方法是使用eslint-loader.

在你webpack.config.js,你会怎么做:

module.exports = {
  // ...
  module: {
    rules: [
      {
        test: /\.jsx?$/, // both .js and .jsx
        loader: 'eslint-loader',
        include: path.resolve(process.cwd(), 'src'),
        enforce: 'pre',
        options: {
          fix: true,
        },
      },
      // ...
    ],
  },
  // ...
};
Run Code Online (Sandbox Code Playgroud)

  • 谢谢格伦。我的配置中设置了完全相同的规则。除了我使用 `use: 'eslint-loader'` 而不是 `loader: 'eslint-loader'`。我的印象是这些键具有相同的功能(https://webpack.js.org/configuration/module/#rule-loader),但不同之处在于 `use` 需要一个数组作为值,而 `loader` 需要只是一个字符串。 (2认同)