【问题标题】:How to fix just one rule using eslint如何使用 eslint 修复一条规则
【发布时间】:2018-05-29 10:43:14
【问题描述】:

我想使用 eslint 命令标志 --fix 来修复一条规则。我尝试了命令:eslint --fix --config ./.eslintrcsomerules.js .。但它不起作用。如何实现目标?

我的 .eslintrcsomerules.js 文件如下:

module.exports = {
  'rules': {
    'indent': [2, 2],
  }
};

【问题讨论】:

标签: javascript eslint eslintrc


【解决方案1】:

要解决由 just one 规则引起的问题,您需要将--fix --rule--no-eslintrc 结合使用。否则,您的规则只会与您现有的配置合并,并且所有可修复的问题都将得到纠正。例如

$ eslint --no-eslintrc --fix --rule 'indent: [2, 2]'

根据您的设置,您需要将 ESLint 配置中的强制设置重新添加到命令行,以使 lint 运行成功。就我而言,我不得不使用

$ eslint --no-eslintrc --parser babel-eslint --fix --rule 'indent: [2, 2]'

【讨论】:

    【解决方案2】:

    您可以将--rule 标志与您要修复的规则一起传递。例如:

    eslint --fix --rule 'quotes: [2, double]' .
    

    查看official documentation 了解更多信息。

    list of available rules 也可能会有所帮助。

    【讨论】:

    • 另一个例子:yarn lint --fix --rule '@typescript-eslint/member-delimiter-style: error'
    • npm run lint --fix --rule '"arrow-parens": ["warn", "as-needed"] 不工作,任何想法,@Lucas Caton
    【解决方案3】:

    我为此苦苦挣扎。我正在使用 create-react-app 并且很难关闭所有规则但保留所有配置以解析 ES6/TS/etc。

    这个库正是我想要的!我可以查看每个规则有多少错误并有选择地一次修复一个规则
    https://github.com/IanVS/eslint-nibble

    【讨论】:

    • 我是 eslint-nibble 的作者,很高兴你觉得它有用!在后台,它使用github.com/IanVS/eslint-filtered-fix,如果您只是在寻找一个简单的 CLI 工具,也可以直接使用它。
    猜你喜欢
    • 1970-01-01
    • 2018-01-08
    • 2020-11-03
    • 2017-06-19
    • 2019-09-27
    • 1970-01-01
    • 2020-03-23
    • 1970-01-01
    • 2021-04-05
    相关资源
    最近更新 更多