美文网首页ios相关文章
swift4-字典转模型的一些总结

swift4-字典转模型的一些总结

作者: 也许________ | 来源:发表于2017-09-30 12:51 被阅读115次
使用swift4提供的新特性Codable来实现字典转模型
写在前面,使用过程中要知道的几个小知识点

tip1:
如果模型中的属性不包含自定义属性,只有字典中的属性(不是一一对应),这时转模型就可以不用实现 required init(from: Decoder) ,直接转模型就可以

如果模型中包含了自定义属性,必须实现 required init(from: Decoder) 并且在内部对每个属性进行取值赋值,自定义属性根据需要可以选择赋值也可以不赋值

tip2:
如果模型中的属性与字典中的key是一一对应关系,并且不包含自定义属性,那么模型中除了要实现Codable协议外,不需要写任何代码,直接进行转模型就可以

tip3:
如果返回的字典中的key与模型中的属性名称定义规范不同,可以在 CodingKeys 中对该字段进行名称映射

注意:模型必须实现Codable协议,模型中嵌套的模型flatOptions和horsepoint对应的模型也必须实现Codable协议
如果包含自定义属性,则必须在 required init(from: Decoder) 中解码

假设字典中属性名称不符合模型命名规则,可以在CodingKeys中设置映射
上图中字典中的字段叫geoPoint,模型中与之对应的属性为horsePoint
ps:
1.使用 required init(from: Decoder) 进行解码的前提,需要定义遵守CodingKey协议的枚举,在这个枚举中定义所有需要进行解码的属性
2."CodingKeys" 名称可以随意起,不是固定的。

噼里啪啦小魔仙~~~~~

相关文章

  • swift4-字典转模型的一些总结

    使用swift4提供的新特性Codable来实现字典转模型 写在前面,使用过程中要知道的几个小知识点 tip1:如...

  • 14-Swift中字典转模型

    字典转模型(初始化时传入字典) 字典转模型(利用KVC转化) 一、 普通的字典转模型: 二、利用KVC字典转模型:

  • Swift 5.0 使用MJExtension 字典转模型

    记录下swift怎么使用MJExtension 字典转模型1.普通的字典转模型 2.字典数组嵌套转模型

  • model模型无法直接转model模型

    model模型无法直接转model模型 可以model转字典,字典再转model: NSDictionary *v...

  • 字典转模型,模型转字典

    //字典转模型 - (id)initWithDictionary:(NSDictionary*)dic{ self...

  • Swift 字典转模型

    这里探讨字典转模型中模型的类型单一模型模型嵌套 (模型中包含模型 || 模型中包含模型数组) Swfit的字典转模...

  • iOS-模型

    在开发中,经常使用到模型,通常做法就是字典转模型 字典转模型的过程最好封装在模型内部 模型应该提供一个可以传入字典...

  • Object-C字典转模型

    参考资料: 字典转模型详解 字典转模型简介 把字典转成一个类,我们把这个类叫着模型。模型是对字典的一种抽象和封装,...

  • YYModel-字典转模型篇章

    字典转模型 字典转模型通过两个入口函数_yy_dictionaryWithJSON和yy_modelWithDic...

  • 字典转模型(二) --学习MJExtension

    字典转模型方法实现(利用kvc可快速实现) 但是有时字典一些属性我们不需要时, 即我们模型的属性与字典的key不一...

网友评论

  • 蒋昉霖:封装呢
    也许________:没写好,我想要封装成模型类中零代码的。
    但能力不行,只能慢慢完善。

本文标题:swift4-字典转模型的一些总结

本文链接:https://www.haomeiwen.com/subject/mtmgextx.html