自动修复 TSLint 警告

Auto fix TSLint Warnings

    [64, 1]: space indentation expected
    [15, 27]: Missing semicolon
    [109, 36]: missing whitespace
    [111, 24]: missing whitespace
    [70, 1]: Consecutive blank lines are forbidden

我不断收到来自 TSLint 的此类警告。警告信息量大,手动修复难度很大

我正在寻找一种可以自动修复 大部分警告的方法。

您可以使用 TSLint 的 --fix option 来自动修复大多数警告。在常见用例中,这可能看起来像这样:

tslint --fix -c ./config/tslint.json 'src/**/*{.ts,.tsx}'

请记住,这将覆盖您的源代码。虽然这在 99.9% 的时间里都是安全的,但我推荐以下工作流程:

  1. 提交您对代码所做的更改
  2. 运行 带有 --fix 标志的 TSLint,如上
  3. 快速查看TSLint所做的更改
  4. 使用这些更改进行新提交,或者简单地将它们修改为您之前的提交

这样,您将永远不会对流氓自动更正出错感到惊讶。

tslint --fix --project ./tsconfig.json

这是自动修复所有错误是根文件夹

如果你使用 webpack 。你可以使用 tslint-loader:

将此添加到 webpack 模块规则中:

{
    test: /\.ts$/,
    loader: 'tslint-loader',
    enforce: 'pre',
    options: {
      fix: true
    }
  }

在此处阅读更多内容:tslint-loader

如果您使用 IntelliJ IdeaWebStrom,那么您可以在 设置 > 工具 通过以下配置:

保存时 (Ctrl + s),您当前的文件将被修复。

也许这可以帮助一些在保存时寻找自动修复的人!

我们可以制作 tslint 警告以在保存时自动修复。为此,转到 tslint.json 文件并添加以下设置。 [注意:此设置适用于最新的 TSLint 而不是已弃用的 TSLint]。

  "source.fixAll.tslint": true

更新后,转到任何文件并尝试提供一些空格,它显示 tslint 警告消息为 "trailing whitespace",当您保存 (Ctrl + S) 时,此警告将消失。虽然它是手动出现的,但我们通常倾向于尝试在编辑后保存文件,到那时它会自动修复。

编码愉快!

使用@angular/cli你可以使用ng lint --fix