类型团队不符合可编码/可解码

时间:2018-05-06 12:32:37

标签: swift codable

我知道之前已经问过这个问题,我认为我正在按照正确的答案给出一个答案,但我的结构仍然存在一个不符合规定的错误:

struct Team:Codable {

var arrConference:[Conference]

private enum CodingKeys: String, CodingKey {
    case arrConference = "conferences"
}

    struct Conference {

        var conferenceName:String
        var conferenceID:String

        private enum CodingKeys: String, CodingKey {
            case conferenceName = "alias"
            case conferenceID = "id"
        }
    }
}

任何帮助将不胜感激

1 个答案:

答案 0 :(得分:1)

虽然您已将外部结构Team标记为Codable,但您尚未将内部结构Conference标记为Codable。当Team被编码时,它会尝试对其成员进行编码,因此其成员也必须符合Codable

因为Conference它只是一对已经符合Codable的字符串,所以应该处理这个问题。或者至少它是为我编译的,在https://iswift.org/playground

使用Swift 4进行快速而肮脏的测试