假设我有一个struct User模型,其中包含许多属性。
struct User: Codable {
let firstName: String
let lastName: String
// many more properties...
}
正如您在上面看到的,它符合Codable. 想象一下,如果该lastName属性应该被编码/解码为secondName并且我想将它保留lastName在我的最后,我需要将它添加CodingKeys到User模型中。
struct User: Codable {
//...
private enum CodingKeys: String, CodingKey {
case firstName
case lastName = "secondName"
// all the other cases...
}
}
是否有任何可能的方法来避免包含与上述示例中具有相同值的所有casesin (感觉多余)?我知道如果我避免in它在解码/编码时不会被包含在内。但是,有没有办法可以覆盖这种行为?CodingKeysrawValuefirstNamecasesCodingKeys
