[英]Swift Decodable Class does not conform
我是 Swift 的新手,並且對可解碼類有一點麻煩。 我收到關於此類的錯誤:類型“VoucherCode”不符合協議“Decodable”
我在另一個項目中具有完全相同的語法,沒有來自教程的錯誤。
如果沒有發布的行,該類可以工作並從相關的 json 中解碼。
請問我錯過了什么?
import Foundation
class VoucherCode: Decodable, Identifiable, ObservableObject {
@Published var logoData: Data?
var id:UUID?
var title: String?
var voucherCode: String?
var details: String?
var logo: String?
var url: String?
var termsAndConditions: String?
var highlight: String?
var whoFor:[String]?
func getLogoData() {
guard logo != nil else {
return
}
if let url = URL(string: logo!) {
let session = URLSession.shared
let dataTask = session.dataTask(with: url) { (data, response, error) in
if error == nil {
DispatchQueue.main.async {
self.logoData = data!
}
}
}
dataTask.resume()
}
}
}
CodeWithChris 課程中的類似課程(有效)。 沒有錯誤,它可以工作。
將此添加到您的課程中:
private enum CodingKeys: String, CodingKey {
case id, title, voucherCode, details, logo, url, termsAndConditions, highlight, whoFor
}
這將從可解碼中排除 logoData 並使 VoucherCode 可解碼。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.