Eslint AirBNB有4个空格用于缩进

时间:2018-02-21 09:17:04

标签: eslint

我正在配置eslint并使用AirBNB样式指南。

我想将缩进(假定为2个空格)覆盖为4个空格。但无论我在.eslintrc中做什么,我都无法得到这个错误,因此我可以使用4个空格的缩进。

我的代码库中到处都有消息“预期缩进2个空格的聊天,但发现了4.(react / jsx-indent)”。

我正在使用eslint 4.9.0。我该如何解决这个问题?感谢。

3 个答案:

答案 0 :(得分:30)

好的,这样做相对容易,可以通过在你的eslint配置中添加以下内容来实现:

// Indent with 4 spaces
"indent": ["error", 4],

// Indent JSX with 4 spaces
"react/jsx-indent": ["error", 4],

// Indent props with 4 spaces
"react/jsx-indent-props": ["error", 4],

答案 1 :(得分:8)

以上代码应添加到ESlint配置的规则字段中。

module.exports = {
"extends": "eslint:recommended",
"rules": {
    // enable additional rules
    "indent": ["error", 4],
    "linebreak-style": ["error", "unix"],
    "quotes": ["error", "double"],
    "semi": ["error", "always"],

    // override default options for rules from base configurations
    "comma-dangle": ["error", "always"],
    "no-cond-assign": ["error", "always"],

    // disable rules from base configurations
    "no-console": "off",
}

[Source-请参见 使用“ eslint:推荐” ]

答案 2 :(得分:0)

由于接受的答案不完整且答案的编辑队列已满,因此我要添加此补语:

要完全禁用 2位数标识规则,请将以下行添加到esling配置文件的rules属性中:

"indent": "off",

要覆盖规则(可能是您想要的),以检查4个空格而不是2个空格,请添加以下行:

"indent": ["error", 4],

它应该像这样:

// eslintrc.js
module.exports = {
  "extends": [
    "eslint:recommended",
    "airbnb",
  ],
  "rules": [
    "indent": ["error", 4],
  ],
};

ESLint配置位置

您的eslint配置可能位于以下任何文件中:

  1. .eslintrc.js
  2. .eslintrc.cjs
  3. .eslintrc.yaml
  4. .eslintrc.yml
  5. .eslintrc.json
  6. .eslintrc
  7. 或者它可能在package.json属性的"eslintConfig"内部。

有关eslint配置的更多信息:https://eslint.org/docs/user-guide/configuring