打字稿:如何降级或忽略某些类型的错误

时间:2018-03-26 23:07:38

标签: typescript compilation warnings

尽管严格的代码分析非常有用,但是Typescript编译因非严重错误而失败似乎是错误的。

例如Consecutive blank lines are forbidden,或者在开发时使用未使用的变量/定义。特别是第一个,因为它们正在编译出来。

有没有办法根据类型降级或删除错误消息?我知道我们可以......

// @ts-ignore

...对于个别错误,但我正在寻找更广泛的画笔。

1 个答案:

答案 0 :(得分:3)

我相信Consecutive blank lines are forbidden来自短信。可以使用以下配置(TSLint core rulestslint.json"no-consecutive-blank-lines": false, "no-unused-variable": false 中禁用它:

"default" | "error" | "warning" | "off"

每个规则也可以与包含严重性的对象关联:"no-consecutive-blank-lines": { "severity": "warning" }, "no-unused-variable": { "severity": "warning" } Configuring TSLint)。因此,您可以使用以下内容降级为警告:

tsconfig.json

"noUnusedLocals": false TypeScript compiler options)中也不必禁用未使用的变量/定义:

--fix

我想注意tslint可以选择使用var json = """ { "counterLeft" : 53422.434, "counterStart" : "2018-03-26T07:00:00.000Z" } """.data(using: .utf8) struct model : Codable { let counterLeft : Int? let counterStart : String? enum CodingKeys: String, CodingKey { case counterLeft = "counterLeft" case counterStart = "counterStart" } init(from decoder: Decoder) throws { let values = try decoder.container(keyedBy: CodingKeys.self) counterLeft = try Int(values.decodeIfPresent(Double.self, forKey: .counterLeft) ?? 0) counterStart = try values.decodeIfPresent(String.self, forKey: .counterStart) } } let responseModel = try JSONDecoder().decode(model.self, from: json!) 标志自动修复连续空白行等错误。例如,VS Code有一个选项可以在保存时自动修复linting错误,启用此功能后,linter在开发期间不会受到任何阻碍。