如何在Swift 4中使用未知服务器数据类型的Object Mapper中进行属性?

时间:2017-11-26 10:22:04

标签: ios json swift parsing objectmapper

我想像这样解析json:

let JSONString = "{\"id\":23,\"title\":\"Saramon\"}" // id is Int
let JSONString = "{\"id\":\"23\",\"title\":\"Saramon\"}". //id is String

class Category: Mappable {

    var id:Int?
    var title:String?

    //Mark - Mappable
    required convenience init?(map: Map) {
        self.init()
    }

    func mapping(map: Map) {
      id              <- map["id"]
      title           <- map["title"]
    }  
}  

但是当json中 id String 时,返回nil。
所以我使用了 TrasformOf ,但当 id Int 时,会显示另一个崩溃问题。
如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我猜你有两个选择。要么TransformOf<Int, Any>并检查类型。或者创建一个String类型的私有属性,然后更新,如果value不是nil,您将使用转换后的值设置idThis与您的问题不同,但它可以帮助解决您的问题。