$ $(yarn bin)/tslint --version
5.7.0
$ $(yarn bin)/tsc --version
Version 2.5.2
我在现有代码库上运行tslint
。
我的项目有no-unused-variable
规则集(通过使用类似预设的包)。
我的项目还为 TypeScript 启用了noUnusedLocals
和noUnusedParameters
编译器选项(反对,通过使用类似预设的包)。
我偶尔会更新我的规则并运行tslint
的--fix
选项来自动修复我的代码。
这包括受益于no-unused-variable
规则的自动修复功能。
在我的代码库上运行tslint --fix
时的示例输出:
$ $(yarn bin)/tslint --project tsconfig.json --config tslint.json --fix src/**/*.ts
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
WARNING: 'no-unused-variable' lint rule does not need to be set if the 'no-unused-locals' and 'no-unused-parameters' compiler options are enabled.
如此处所述, no-unused-variable
规则未被弃用,因为用户(包括我自己)受益于自动修复功能。
然而,警告暗示我根本不应该使用该规则,并导致大量不必要的输出到控制台,这可能会掩盖其他重要信息,例如代码中无法修复的问题。
我相信删除警告就可以了。
对我来说, no-unused-variable 根本没有做任何事情;(
版本 5.7.0
这是我的配置
{
"extends": [
"tslint:latest",
"tslint-react",
"tslint-config-prettier"
],
"rules": {
"ban-types": false,
"interface-name": null,
"interface-over-type-literal": false,
"jsx-boolean-value": null,
"jsx-no-lambda": null,
"max-classes-per-file": [],
"member-access": false,
"no-namespace": null,
"no-unused-expression": [false],
"no-unused-variable": true,
"no-var-requires": false,
"object-literal-shorthand": false,
"object-literal-sort-keys": false,
"only-arrow-functions": null,
"ordered-imports": null,
"prefer-const": false,
"variable-name": false,
"no-invalid-template-strings": false,
"no-submodule-imports": false
}
}
@destroyerofbuilds听起来不错——您主要使用no-unused-variable
用于自动修复功能,因此警告无关紧要。 我认为我们应该删除警告(接受 PR)。 最好还更新规则文档来描述这种使用模式。
@tomitrescak你如何运行 TSLint? 这听起来像是与原始帖子不同的问题; 如果您还没有打开另一个问题,我会鼓励您打开另一个问题。
最有用的评论
@destroyerofbuilds听起来不错——您主要使用
no-unused-variable
用于自动修复功能,因此警告无关紧要。 我认为我们应该删除警告(接受 PR)。 最好还更新规则文档来描述这种使用模式。