【问题标题】:ESLint "Unexpected tab character" when "indent" rule set to "tab"当“缩进”规则设置为“制表符”时,ESLint“意外的制表符”
【发布时间】:2017-04-15 01:55:50
【问题描述】:

我将 ESLint 与 Airbnb plugin (eslint-config-airbnb) 和 Babel 解析器一起使用。我刚刚添加了使用 Tab 字符进行缩进而不是空格的额外规则。

这是我的.eslintrc

{
    "parser": "babel-eslint",
    "extends": "airbnb",
    "plugins": [
        "react",
        "jsx-a11y",
        "import"
    ],
    "rules":{
        "indent": [2, "tab"]
    }
}

现在每次缩进都会出现这个错误:

Error: Unexpected tab character

以防万一,我将 Atom IDE 与 autolinter 插件 linterlinter-eslint 一起使用。

【问题讨论】:

  • 是否有伴随该错误的堆栈跟踪?它看起来不是一个正常的 linter 错误,尽管它可能来自解析器。
  • atom 显示错误,是的,它说的是关于 no-tabs 规则;)

标签: javascript babeljs eslint indentation eslint-config-airbnb


【解决方案1】:

“no-tabs”规则在文件中的任何位置查找选项卡:代码、cmets 或其他任何内容。 这可能是另一个答案。

...
"rules": {
    ...
    "no-tabs": ["error", { "allowIndentationTabs": true }]
    ...
}
...

【讨论】:

    【解决方案2】:

    我自己回答,是因为 Airbnb 将规则 no-tabs 设置为 2 或错误,我只是禁用了它。

    {
        "parser": "babel-eslint",
        "extends": "airbnb",
        "plugins": [
            "react",
            "jsx-a11y",
            "import"
        ],
        "rules":{
            "indent": [2, "tab"],
            "no-tabs": 0
        }
    }
    

    【讨论】:

    • 仅供参考,标准的也会发生这种情况,而不仅仅是 airbnb 和 no-tab 规则有效。谢谢
    • 谢谢!我将缩进规则设置为制表符,但不知道我必须专门禁用 airbnb 的“无制表符”。成功了,谢谢!
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-12-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-05-22
    • 1970-01-01
    相关资源
    最近更新 更多