不符合协议可解码/可编码

时间:2018-03-03 17:58:10

标签: swift swift4

我正在使用以下结构:

struct Item : Codable {

    var category:String
    var birthDate:Date
    var switch:Bool
    var weightNew: [Weight]
    var weightOld: Array<Double>
    var createdAt:Date
    var itemIdentifier:UUID
    var completed:Bool

    func saveItem() {
        DataManager.save(self, with: itemIdentifier.uuidString)
    }

    func deleteItem() { DataManager.delete(itemIdentifier.uuidString)
    }

    mutating func markAsCompleted() {
        self.completed = true
        DataManager.save(self, with: itemIdentifier.uuidString)
    }

}

对于体重:

struct Weight {
    var day:Int
    var weight:Double
    var type:Bool
}

将weightOld改为weightNew我得到两个错误: - 类型'项目'不符合协议'可解码' - 类型'Item'不符合协议'Codable'

如果我遗漏'var weightNew:[Weight]'它可行。不知道发生了什么以及如何解决它...帮助表示赞赏。

0 个答案:

没有答案