tslint的含义是什么:"警告:'声明前不使用'规则需要类型信息"?

use*_*495 24 typescript tslint angular

tslint的含义是什么:"警告:'声明前不使用'规则需要类型信息."?我做了一些基本的谷歌搜索,但我不清楚这意味着什么或它的影响.

Fen*_*ton 22

更新!由于此问题已被提出,因此该--type-check标志已被弃用,因此您应该可以使用:

tslint --project tsconfig.json src/**/**.ts
Run Code Online (Sandbox Code Playgroud)

原答案如下.

我相信这意味着no-use-before-declare除非你使用--type-check--project标志运行,否则你无法启用规则.它必须依赖于传递这些标志时发生的事情,以确定规则违规.

tslint --type-check --project tslint.json src/**/**.ts
Run Code Online (Sandbox Code Playgroud)


Jon*_*mos 6

不鼓励使用该规则,因为现代 TypeScript 不使用它并且计算速度很慢。根据此页面

这条规则主要在使用 var 关键字时有用,因为编译器会在声明之前自动检测是否使用了块范围的 let 和 const 变量。由于大多数现代 TypeScript 不使用 var,因此通常不鼓励此规则并保留用于遗留目的。它计算缓慢,未在内置配置预设中启用,不应用于通知 TSLint 设计决策。


Zha*_*uzz 6

如果您在VSCode中看到此警告,只需从中删除此规则tslint.json,如插件中的README文件中所述vscode-tslint

从tslint版本5开始,规则no-unused-variable需要类型信息。vscode-tslint当前不支持带有类型信息的规则,请参见问题70。建议的解决方法是在tsconfig.json文件中启用TypeScript编译器选项noUnusedLocals和noUnusedParameters。