将默认错误级别设置为 WARN

Set default error level to WARN

似乎所有 eslint 规则的默认错误级别都是 "error"。这很烦人,因为即使对于省略的分号,我的应用程序也无法编译。

如何将其设置为 "warn" 以便我的应用程序编译但显示警告?

我知道我可以将每个规则设置为手动发出警告,但我更愿意在全局范围内进行。在官方文档中我没有找到这样的选项。

这是我在 .eslingtrc.js 中的配置:

// http://eslint.org/docs/user-guide/configuring

module.exports = {
  root: true,
  parser: 'babel-eslint',
  parserOptions: {
    sourceType: 'module'
  },
  env: {
    browser: true,
  },
  // https://github.com/feross/standard/blob/master/RULES.md#javascript-standard-style
  extends: 'standard',
  // required to lint *.vue files
  plugins: [
    'html'
  ],
  // add your custom rules here
  'rules': {
    // allow paren-less arrow functions
    'arrow-parens': 0,
    'indent': 1,
    // allow async-await
    'generator-star-spacing': 0,
    // allow debugger during development
    'no-debugger': process.env.NODE_ENV === 'production' ? 2 : 0,
    'padded-blocks': [1, {classes: 'always'}],
    'semi': 1
  }
}

您可以使用 eslint 插件 eslint-plugin-only-warn 或使用与此插件相同的方法通过修补验证功能

如果你仍然需要一些规则来触发一个完整的错误(eslint-plugin-only-warn 不允许你这样做),你可以尝试 fork eslint-plugin-switch-error-warn(完全披露——我是分叉作者)。它将错误转换为警告,反之亦然,因此您可以将特定规则设置为 "warn" 以使它们再次触发错误。这将为您提供指定异常的附加功能,尽管它可能会变得相当混乱!

您还需要将任何默认为警告的规则(例如 'no-console')显式设置为 'error' 模式,让它们仅通过切换器插件发出警告。