繁体   English   中英

typescript-eslint 未使用 tsconfig

[英]tsconfig not used by typescript-eslint

在一个新的项目,我安装了typescripteslint@typescript-eslint/parser@typescipt-eslint/eslint-plugin 我还添加了以下.eslintrc文件:

{
  "parser": "@typescript-eslint/parser",
  "plugins": ["@typescript-eslint"]
}

以及以下tsconfig.json文件:

{
  "compilerOptions": {
    "strict": true
  }
}

问题是tsconfig.json中的选项在我运行命令eslint时没有应用。 不过,它与命令tsc一起按预期工作。

例如,文件index.ts包含:

function sum(a, b) {}

如果我运行npx eslint index.js ,我没有错误,而如果我运行tsc --noEmit ,我有两个:

  • 错误 TS7006:参数“a”隐式具有“任何”类型。
  • 错误 TS7006:参数“b”隐式具有“任何”类型。

我希望eslint命令返回与tsc命令相同的错误。 任何的想法?

编辑我尝试在.eslintrc使用和不使用以下.eslintrc

"parserOptions": {
  "project": "./tsconfig.json"
}

typescript-eslint 不报告编译器警告。 它只报告由其自己的验证规则生成的警告。 此外,在 TypeScript 中启用strict选项对 typescript-eslint 执行的代码分析没有影响,它不依赖于项目设置。

一些关于创建新的@typescript-eslint/no-undef规则(以 ESLint no-undef规则为模型)的讨论,该规则至少可以捕获 tsc 编译器生成的一些警告,并进行严格的类型检查。

目前最好的方法可能是将tsc --noEmit的执行集成到 lint 进程中。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM