You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ESLint不遵循.eslintrc.json自定义配置问题求助

解决ESLint Airbnb配置下Tab缩进不生效的问题

我之前也碰到过一模一样的问题!核心原因是Airbnb的base配置默认启用了no-tabs规则,你只修改了indent规则允许Tab,但no-tabs还在禁止Tab字符,两个规则冲突,导致ESLint还是会抛出那个错误。

下面是具体的解决步骤:

1. 补充禁用no-tabs规则

直接在你的.eslintrc.json的rules里添加"no-tabs": "off",修改后的完整配置如下:

{
  "extends": "airbnb-base",
  "env": {
    "browser": true,
    "node": true
  },
  "rules": {
    "comma-dangle": "off",
    "indent": ["error", "tab"],
    "no-console": "off",
    "no-tabs": "off"
  }
}

2. 排除其他可能的干扰

如果修改后还是不生效,可以检查这几个细节:

  • 优先使用本地ESLint:全局安装的ESLint可能和本地项目的Airbnb配置版本不兼容,运行检查时用npx eslint your-file.js(把your-file.js替换成你要检查的目标文件),确保调用的是项目本地的ESLint版本。
  • 检查嵌套配置文件:项目子目录里有没有单独的.eslintrc.json或者.eslintignore?这些文件可能会覆盖根目录的配置,比如子目录配置又重新开启了no-tabs。
  • 编辑器插件的额外设置:比如VS Code的ESLint插件有没有在用户设置里强制添加了相关规则?可以打开VS Code设置搜索eslint.options,确认没有额外添加和Tab缩进冲突的配置。

3. 验证配置是否生效

修改完配置后,你可以运行npx eslint --print-config your-file.js,在输出内容里搜索no-tabs和indent,确认它们的设置符合预期(no-tabs为off,indent的第二个参数是tab)。

这样调整后,ESLint就会允许你用Tab来缩进,不会再抛出Unexpected tab character的错误了。

内容的提问来源于stack exchange,提问作者Joel Z.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.15 04:37:13