Swift4.0 MJExtension解析模型

  • 1.首先要说的第一个问题,那就是,在创建模型的属性的时候,要在属性的前面添加@objc,否则无法解析
import UIKit
class Student : NSObject {
  @objc var name : String?
  @objc var age : Int = 0
}

在需要的地方进行解析

self.stues = Student.mj_objectArray(withKeyValuesArray: resultArray) as! [Student]
  • 2.模型之间的嵌套,可以使用didSet来进行解析.
    一个学生有很多本书
// 书的模型
import UIKit
class Book : NSObject {
  @objc var name : String?
  @objc var page : Int = 0
}

然后,在学生的模型中,设置嵌套书的模型

import UIKit
class Student : NSObject {
  @objc var name : String?
  @objc var age : Int = 0

  @objc var book : [String : AnyObject]? {
    didSet {
      bookModel = Book.mj_object(withKeyValues: book)
    }
  }
}
var bookModel : Book?

然后,解析模型,你就会发现,书本模型中的数据已经在学生模型中了

你可能感兴趣的:(Swift4.0 MJExtension解析模型)