在一个新项目中,我安装了typescript
,eslint
,@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
,则有两个错误:
我希望eslint
命令返回与tsc
命令相同的错误。
有想法吗?
答案 0 :(得分:2)
typescript-eslint不报告编译器警告。它仅报告由其自己的验证规则生成的警告。另外,在TypeScript中启用strict
选项不会影响由typescript-eslint执行的代码分析,而该脚本分析不依赖于项目设置。
已有some discussions关于创建新的@typescript-eslint/no-undef
规则(以ESLint no-undef
规则为模型)的信息,该规则将至少捕获tsc编译器通过严格类型检查生成的一些警告上。
目前最好的方法可能是将tsc --noEmit
的执行整合到整个进程中。