自动修复TSLint警告

ANK*_*DAR 53 warnings typescript tslint angular

    [64, 1]: space indentation expected
    [15, 27]: Missing semicolon
    [109, 36]: missing whitespace
    [111, 24]: missing whitespace
    [70, 1]: Consecutive blank lines are forbidden
Run Code Online (Sandbox Code Playgroud)

我一直在收到TSLint的警告.有大量的警告,手动修复它将非常困难.

我正在寻找一种可以自动修复大多数警告的方法.

JKi*_*ian 97

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

tslint --fix -c ./config/tslint.json 'src/**/*{.ts,.tsx}'
Run Code Online (Sandbox Code Playgroud)

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

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

这样,你就不会因流氓自动更正而出错.

  • 如果您使用的是Angular CLI,则使用```ng lint --fix```运行 (28认同)
  • @daniel.caspers 或 `node_modules\.bin\tslint --fix -c ./tslint.json 'src/**/*{.ts,.tsx}'` (2认同)

spl*_*ash 11

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


ANK*_*DAR 10

tslint --fix --project ./tsconfig.json
Run Code Online (Sandbox Code Playgroud)

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


小智 6

可能这可以帮助某些人在保存时寻找 autoFix!

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

  "source.fixAll.tslint": true
Run Code Online (Sandbox Code Playgroud)

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

快乐编码!

  • 惊人的!一件事:您必须将该行添加到 `settings.json` 而不是 tslint.json。要添加的完整代码: `"editor.codeActionsOnSave": { "source.fixAll.tslint": true }` (5认同)