解析方法

在学习解析的时候,我们通常这样写(直接拿项目中的接口给大家测试下)

MembersModel.h中


接口请求的数据

数据添加到数组

打印数组

看上去很有条理,按部就班,但是这种方法有确定,如果数据多了,累死人,所以我教大家一个简单的方法

简单使用setValuesForKeysWithDictionary

只需要一句话就可以替代之前的数据添加到数组

之前

使用setValuesForKeysWithDictionary方法


输出

是不是很方便了。假如有20个数据我们就不用像之前那样一个个赋值,现在只需要一句话轻松搞定

深入一些

后台在接口里面添加了新的字段没有告诉我们,会怎么样。

拿项目里的接口举例,我们把成员头像注掉


我们在请求数据

玩蛋啦,炸啦!通过了编译,但是运行就炸啦


因为在model中,没有对应的M_IMAGE属性,所以导致程序爆炸

解决方法

MembersModel.h中

MembersModel.m中

这个方法里什么都不用写  直接怼上去就行

现在我们在运行输出一下

我们的数组里面确实是没有之前的M_IMAGE了,有人可能说不对啊 你之前有6条数据现在怎么成一条了,因为是后台大哥把我建的群里面的成员删得就剩一个了,总之咱们成功啦

如果请求的数据和model中的属性名字不同,应该怎么办?

首先我们把MembersModel.h中ID改成Id,这样就和接口请求来的字段不一样了


这时候就需要在MembersModel.m中的setValue:forUndefinedKey方法中加操作了

输出

正常输出

这样写个人感觉还是有点麻烦,所以在教大家一个更简单的,李明杰老师的MJExtension,确实是很方便

使用方法,把请求的数据添加到数据,一句话轻松搞定:字典数组 -> 模型数组

这种方法是不是更加简单,运行输出

正常输出。

本人新手呆鸟,忘各位老司机多多鞭策,使我快速成长。谢啦

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容