Tslint: 为支持的“no-unused-variable”规则显示警告

创建于 2017-09-13  ·  3评论  ·  资料来源: palantir/tslint

错误报告

  • __TSLint 版本__:
$ $(yarn bin)/tslint --version
5.7.0
  • __打字稿版本__:
$ $(yarn bin)/tsc --version
Version 2.5.2
  • __通过__运行TSLint:CLI

实际行为

我在现有代码库上运行tslint

我的项目有no-unused-variable规则集(通过使用类似预设的包)。

我的项目还为 TypeScript 启用了noUnusedLocalsnoUnusedParameters编译器选项(反对,通过使用类似预设的包)。

我偶尔会更新我的规则并运行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规则未被弃用,因为用户(包括我自己)受益于自动修复功能。

然而,警告暗示我根本不应该使用该规则,并导致大量不必要的输出到控制台,这可能会掩盖其他重要信息,例如代码中无法修复的问题。

我相信删除警告就可以了。

P3 Accepting PRs Bug

最有用的评论

@destroyerofbuilds听起来不错——您主要使用no-unused-variable用于自动修复功能,因此警告无关紧要。 我认为我们应该删除警告(接受 PR)。 最好还更新规则文档来描述这种使用模式。

所有3条评论

对我来说, 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? 这听起来像是与原始帖子不同的问题; 如果您还没有打开另一个问题,我会鼓励您打开另一个问题。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

doronsever picture doronsever  ·  20评论

ksnyde picture ksnyde  ·  29评论

cerebrl picture cerebrl  ·  20评论

adidahiya picture adidahiya  ·  37评论

am11 picture am11  ·  57评论