/ / n'est pas conforme au protocole Décodable / Codable - swift, swift4

n'est pas conforme au protocole décodable / codable - swift, swift4

J'utilise la structure suivante:

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)
}

}

Et pour le poids:

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

Après avoir modifié weightOld en weightNew, j'obtiens deux erreurs: - Le type "Item" n'est pas conforme au protocole "Décodable" - Le type "Item" n'est pas conforme au protocole "Codable"

Si je laisse "var weightNew: [Weight]", cela fonctionne. Ne sais pas ce qui se passe et comment le résoudre ... L’aide est appréciée.

Réponses:

9 pour la réponse № 1

Tout doit être codable. Jusqu'ici votre Weight struct n'est pas codable. Mettre à jour Weight être codable aussi bien et Item sera codable.