安卓開發(fā)中有g(shù)son,寫好數(shù)據(jù)結(jié)構(gòu)后可以一鍵解析數(shù)據(jù),但是swiftUI中,大多數(shù)情況我都是使用SwiftyJSON去解析數(shù)據(jù),少量的還行,數(shù)據(jù)量龐大的時候?qū)懙拇a真的丑到極致
首先寫一個model用來解析數(shù)據(jù)結(jié)構(gòu),每個class都要繼承HandyJSON,并且如果在你要顯示在頁面的class對象后要繼承Identifiable,如下
class BodyTod:HandyJSON,Identifiable{
var id = UUID()
var currentTime:String?
var total:Int?
var itemList = [OrderDetail]()
required init() {}//必寫
}
class OrderDetail:HandyJSON,Identifiable{
var id: String?
/**
* 訂單編號
*/
var code : String?
/**
* 成交時間
*/
var paymentTime :String?
/**
* 支付方式(wechat,alipay)
*/
var paymentType:String?
}
Identifiable不繼承的話,在swiftUI中是無法在foreach中使用的,會報錯,在你獲取到后端返回數(shù)據(jù)后
if let object = OrderDetailsResponse.deserialize(from: json) //json 是后端返回數(shù)據(jù) data類型
object就是我們想要的值,這時候可以像獲取什么就拿什么就好了