Angular 如何对*.spec.ts文件使用不同的tslint.json

Angular 如何对*.spec.ts文件使用不同的tslint.json,angular,typescript,intellij-idea,tslint,Angular,Typescript,Intellij Idea,Tslint,我为我的角度应用程序定义了一组tslint规则。但是,对于spec文件,我希望使用更宽松的规则集(例如,为nice expect语句禁用newline per chained call规则),但我不知道如何在IntelliJ IDEA中做到这一点 Angular CLI工作正常,因为在CLI配置中有一个部分将正确的tsconfig.json文件(带有正确的排除/包含)映射到相应的tslint文件。然而,IntelliJ并不尊重这一点 "lint": [ { "project": "s

我为我的角度应用程序定义了一组tslint规则。但是,对于spec文件,我希望使用更宽松的规则集(例如,为nice expect语句禁用
newline per chained call
规则),但我不知道如何在IntelliJ IDEA中做到这一点

Angular CLI工作正常,因为在CLI配置中有一个部分将正确的tsconfig.json文件(带有正确的排除/包含)映射到相应的tslint文件。然而,IntelliJ并不尊重这一点

"lint": [
  {
    "project": "src/tsconfig.app.json"
  },
  {
    "project": "src/tsconfig.spec.json"
    "tslintConfig": "tslint.spec.json"
  },
  {
    "project": "e2e/tsconfig.e2e.json",
    "tslintConfig": "tslint.spec.json"
  }
]
IntelliJ自2018.1版起就支持多个tsconfig.json文件(请参阅:),尽管看起来仍然不支持多个tslint配置

我还找到了一个解决方案,可以创建一个本地范围并禁用对它的一些检查,但我更希望它由不使用IntelliJ的人使用的tslint规则定义


另一种方法是将测试放在单独的目录中,并在其中放置一个tslint.json,但这不是Angular推荐的,也不是Angular中人们习惯的。IDEA中的TsLint服务的工作方式与TsLint cli的工作方式相同-它在被lint的文件目录中查找名为
TsLint.json
的配置文件,如果找不到,则搜索祖先目录。因此,唯一的解决方案是在
spec
dir中放置单独的配置文件。
如果您需要服务遵循此处的角度规则,请随时在youtrack中创建功能请求。如果获得足够的票数,它将被考虑用于未来版本

感谢您的建议,以下是我创建的票证: