HandJSON的使用参考
class BaseModel: HandyJSON,Codable {
required init() {}
func mapping(mapper: HelpingMapper) { //自定义解析规则,日期数字颜色,如果要指定解析格式,子类实现重写此方法即可
// mapper <<<
// date <-- CustomDateFormatTransform(formatString: "yyyy-MM-dd")
//
// mapper <<<
// decimal <-- NSDecimalNumberTransform()
//
// mapper <<<
// url <-- URLTransform(shouldEncodeURLString: false)
//
// mapper <<<
// data <-- DataTransform()
//
// mapper <<<
// color <-- HexColorTransform()
}
}
具体json转model需要
以下是我项目中使用的代码 后台返回json
{ "code": 200, "data": { "result": [ { "id": 39, "img": "pxs3-img-test.oss-cn-shenzhen.aliyuncs.com/uploads/ima…", "img_width": "", "img_height": "", "bg_images": "pxs3-img.oss-cn-shenzhen.aliyuncs.com/defauit_ove…", "bg_images_width": "", "bg_images_height": "", "jump_type": 1, "jump_view": "shop_success", "jump_param": "" } ] }, "msg": "SUCCESS" }
配合SwiftyJSON框架转模型
JSON转数组模型
func loadBannerData(position:String) {
HttpRequest.loadData(target: PXSHomeAPI.banner(position: position), success: { (data) in
let json = JSON(data)
if let imageArr = JSONDeserializer<ImageModel>.deserializeModelArrayFrom(json: json["data"]["result"].description) {
self.updateDataBlock?()
}) { (code, msg) in
}
}
JSON转模型
后台JSON数据:
> {
"code": 200,
"data": {
"result": {
"transfer_shop": "2124", //在线转店
"transfer_success": 1788, //转店成功
"find_shop": 0 //找店成功
}
},
"msg": "SUCCESS"
}
func loadCountData() {
HttpRequest.loadData(target: PXSHomeAPI.statistics, success: { (res) in
let json = JSON(res)
if let model = JSONDeserializer<PXSHomeCountModel>.deserializeFrom(json: json.description, designatedPath: "data.result") {
self.countModel = model
self.updateDataBlock?()
}
}) { (code, message) in
}
}