问题描述
嗨程序员实际上当我将我的 json 格式化为可编码时我遇到了这个错误“类型'HomeViewControler'不符合协议'可解码'和'可编码'”我看到了类似的问题,但我没有结果,我很高兴看到你的帮助谢谢
这是我的代码:
class HomeViewController: UIViewController,UICollectionViewDataSource {
@IBOutlet weak var collectionView: UICollectionView!
var txt : String = " "
var cid : String = " "
override func viewDidLoad() {
super.viewDidLoad()
print("\n iiiiiiiiiid is \(cid)")
collectionView.dataSource = self
}
struct welcomeJson: Codable { // this is where i have this error
let userId : UserID
let isoGld,check : Bool
let image : [String]
let date,id,title,countryid,about,cityid,telephone,countryText,cityText,category,address,dateOfExpire,dateOfStart,offer,createdAt,updateAt,v : String
enum CodingKeys : String,CodingKey {
case userId
case isoGld
case image
case check
case date
case id = "_id"
case title
case countryID = "country"
case cityID = "city"
case telephone
case countryText
case cityText
case category
case address
case dateOfExpire = "dateOfEx"
case dateOfStart
case offer
case about
case createdAt
case updateAt
case v = "__v"
}
}
struct UserID : Codable {
let ID,name,userName,email,phone : String
enum CodingKeys : String,CodingKey {
case ID = "Id"
case name
case userName
case email
case phone
}
}
struct Data: Codable {
var data : [welcomeJson]
}
func collectionView(_ collectionView: UICollectionView,numberOfItemsInSection section: Int) -> Int {
return 5
}
func collectionView(_ collectionView: UICollectionView,cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "OfferCollectionViewCell",for: indexPath)
return cell
}
func fetchOffer() {
if let url = URL(string: "http://5.63.13.16:8080/api/product/search/getByquerys?page=1&limit=10&city=\(cid)") {
URLSession.shared.dataTask(with: url) {data,response,error in
if let data = data {
let jsondec = JSONDecoder()
do {
let parsedJS = try jsondec.decode(Data.self,from: data)
for element in parsedJS.data {
print("adresssssetooo begooo : \(element.address) ")
}
} catch {
print(error)
}
}
}
}
并且我也在评论中显示我有这个错误
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)