【问题标题】:WebStorm fixing all TSLint error is fixing all but one修复所有 TSLint 错误的 WebStorm 正在修复除一个之外的所有错误
【发布时间】:2019-01-07 11:24:00
【问题描述】:

在 WebStorm 中,我的 Angular 项目的 tslint.json 包含以下几行

"triple-equals": [
  true,
  "allow-null-check"
]

每当我在我的component.ts 文件中进行== 比较时,它都会显示 lint 警告以及其他 TSLint 警告和错误。

点击“TSLint:Fix current File”后,它会修复所有问题,但不会将== 转换为===,并继续显示== 应为=== 的警告。

请告知如何解决此问题。

【问题讨论】:

  • 您能否发布一个您认为应该但不正确的代码示例...即您说whenever I give == comparison ...但是您在比较什么?如果没有给您带来问题的代码,如何获得帮助?您甚至知道该配置的作用吗?
  • 嘿@JaromandaX 这是一段代码,我希望它能修复但它没有: if (event.type == "submit") { // do something } else { / /something else } 所以这里显示了两个问题,第一个“应该是”,第二个是关于这个 ==
  • 很公平,因为我虽然您可能一直在与null 进行比较 - 没有代码,只有推测:p
  • 也许是故意的?从===== 的自动转换可能会破坏必须进行松散比较== 的逻辑。 (例如 let a = '0'; 然后 0 == a;0 === a 会给出不同的输出
  • @Justinas 你说的有道理,但是根据功能,这应该可以工作,不是吗?

标签: javascript typescript webstorm tslint


【解决方案1】:

并非所有 TSLint 规则都是可修复的,尤其是运行 tslint --fix 并不能修复“triple-equals”错误。我认为这是有意完成的,因为尽管在大多数情况下建议使用严格相等运算符,但由于其强制功能(例如,当数字作为来自 ajax 调用的字符串时),抽象相等运算符有时很方便。

无论如何,这不是 WebStorm 的问题;如果您错过了此规则的自动修复,请随时向https://github.com/palantir/tslint/issues提出请求

【讨论】:

    猜你喜欢
    • 2020-12-21
    • 1970-01-01
    • 2017-01-26
    • 1970-01-01
    • 1970-01-01
    • 2020-11-25
    • 2019-03-10
    • 2023-04-02
    • 1970-01-01
    相关资源
    最近更新 更多