尽管严格的代码分析非常有用,但是Typescript编译因非严重错误而失败似乎是错误的。
例如Consecutive blank lines are forbidden
,或者在开发时使用未使用的变量/定义。特别是第一个,因为它们正在编译出来。
有没有办法根据类型降级或删除错误消息?我知道我们可以......
// @ts-ignore
...对于个别错误,但我正在寻找更广泛的画笔。
答案 0 :(得分:3)
我相信Consecutive blank lines are forbidden
来自短信。可以使用以下配置(TSLint core rules)tslint.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在开发期间不会受到任何阻碍。