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

如何配置Angular Lint以避免"space indentation expected"缩进错误?

没问题,完全可以通过配置校验器来改成4空格缩进,不用禁用整个规则或者加局部注释,下面分两种情况给你说具体操作:

针对使用TSLint的旧版Angular项目(Angular 9及以前)

找到项目根目录下的tslint.json配置文件,定位到rules节点里的indent规则:

  • 原来的配置大概率是类似这样的:"indent": [true, "spaces", 2]
  • 把它修改为:"indent": [true, "spaces", 4]

这样配置后,linter就会要求代码使用4个空格作为缩进,而不是默认的2个,自然就不会再报space indentation expected的错误了。

针对使用ESLint的新版Angular项目(Angular 10及以后)

新版Angular已经切换到ESLint作为默认校验器,你需要修改根目录下的.eslintrc.json(或.eslintrc.js)文件:
在rules节点中添加或修改@typescript-eslint/indent规则,配置为4空格:

"@typescript-eslint/indent": ["error", 4, {
  "SwitchCase": 1,
  "ignoredNodes": ["TSTypeParameterInstantiation"]
}]

另外可以确保no-tabs规则是启用的(默认一般是启用的),它会强制禁止使用制表符,避免混用空格和制表符的问题:

"no-tabs": "error"

额外小提示

如果你的项目里现在还大量使用制表符,可以用编辑器的批量替换功能一次性转换成4空格:比如VS Code里打开查找替换面板,勾选「使用正则表达式」,查找\t,替换为四个空格,然后点击「全部替换」即可。

修改完配置后重新运行ng lint,就会按照4空格的规则来校验代码啦~

内容的提问来源于stack exchange,提问作者user3255061

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.21 04:09:42