Closed zxhkit closed 6 months ago
V3.3.2 版本已修复该问题,正确的输出为// QLSocial(n_type: QLPersonType.best, g_type: QLPersonType.good))。
另外: 关于枚举的类型兼容,会在下个小版本支持。 支持之后,该案例的打印会是: QLSocial(n_type: QLPersonType.best, g_type: QLPersonType.best))
把这个defaultCase去掉吧,写着好烦人。
把这个defaultCase去掉吧,写着好烦人。
defaultCase代表当前枚举类型的默认值。就如同Bool的默认值是falsee一样。 兼容失败的时候,会走默认值逻辑(最后的兜底)。
枚举的解析相对复杂,场景更多。线上验证之后(不会进入兜底逻辑),defaultCase会在接下来某个版本去掉 。
defaultCase 已去掉。
3.3.1中,json转模型,枚举类型不匹配的时候,没有使用默认值。 例如:下例中默认值都是.good
struct QLSocial: SmartCodable { var n_type: QLPersonType = .good var g_type: QLPersonType = .good }
let json1 = """ { "n_type": 2, "g_type": "2" } """
打印结果: