NSStructMapper 1.0

NSStructMapper 1.0

维护者 Salmaan Ahmed.



NSStructMapper

Version License Platform Swift 5 Country

示例

要运行示例项目,请克隆存储库,然后先从 Example 目录中运行 pod install

用法

步骤 1: 创建相同的类

  // Same property names along with interchangeable data types between swift and objc

  // MARK: - Swift Address
  struct Address {
      var city: String?
      var zipCode: String?
  }

  // MARK: - Swift Equivalent ObjC Address
  @objc class NSAddress: NSObject {
      var city: String?
      var zipCode: String?
  }

步骤 2: 遵守您的数据模型

  // Conform your swift structs with Mappable
  struct Contact: Mappable

  // Conform your NSObjects with NSMappable
  @objc class NSContact: NSObject, NSMappable

步骤 3: 实现方法

  // Conform your swift structs with Mappable
  struct Contact: Mappable {
    // Your properties
    
    // Write the following code in Mappable, result should be type of NSObject you want to convert in
    func nsObject() throws -> Storable {
        let result: NSContact = try conversionLogic()
        return result
    }
  }

  // Conform your NSObjects with NSMappable
  @objc class NSContact: NSObject, NSMappable {
    // Your properties
    
    // Write the following code in NSMappable, result should be type of SwiftObject you want to convert in
    func swiftObject() throws -> Mappable {
        let result: Contact = try conversionLogic()
        return result
    }
  }

步骤 4: 在此大快朵颐

  // Convert your SwiftObject to NSObject
  let nsContact: NSContact = try! contact.nsObject() as! NSContact
  
  // Convert your NSObject to SwiftObject
  let sob: Contact = try! nsContact.swiftObject() as! Contact

安装

NSStructMapper 通过 CocaoPods 提供。要安装它,只需将以下行添加到您的 Podfile 中。

pod 'NSStructMapper'

作者

[email protected]

许可证

NSStructMapper 以 MIT 许可证提供。有关更多信息,请参阅 LICENSE 文件。