1
liuidetmks 2023-12-11 16:55:45 +08:00
不要争论,
老字段和新字段都给他返回 ,make him happy 。 |
2
NessajCN 2023-12-11 16:55:48 +08:00
不用理他
|
3
kim0927 2023-12-11 16:55:59 +08:00
这个一般都是客户端兼容吧
|
4
A1aM0 2023-12-11 17:19:36 +08:00
各端各有命名规则,后端一对多怎么能全部兼顾到啊,自己映射一下就好了,框架那么多一共多写不了几行
反正我就这么干的 |
5
yvanww 2023-12-11 17:25:25 +08:00
id 确实是 oc 的关键字,但是确实映射一下就行了,麻烦点而已; ps:我也不喜欢后端用 id 作为参数返回
|
6
xiangyuecn 2023-12-11 17:36:00 +08:00
你们是不是都对关键字有什么误解,换做早些年,这个搞 iOS 的肯定要被我毒打一顿🐶
|
7
bigscotaleha 2023-12-11 17:41:48 +08:00
没什么影响,只是 xcode 会把那个 id 的属性,标记为和关键字一样的主题色,就是看着挺烦。。。就算不映射也没关系。。。
|
8
icubic 2023-12-11 17:43:30 +08:00
作为一个 iOS 开发,真的没见过因为这种理由反过来让后端改字段的。。iOS 要做这个的映射也就没几行代码。。这都不肯改的吗
|
9
hongfengkt 2023-12-11 17:45:12 +08:00
现在已经不需要映射了,早几年需要
|
10
Leonard 2023-12-11 17:45:37 +08:00
确实是 OC 关键字,但是都是可以处理的,也不是很麻烦。他还特地来找你说,很可能是他自己不会处理🐶
|
11
lx271896700133 2023-12-11 17:47:07 +08:00
你跟他说,2023 年了,还不学 swift ,太 Out 了
|
12
HojiOShi 2023-12-11 17:48:40 +08:00
虽然我不是开发 iOS 的,但是转换字符串的方法这么简单都不能实现,这个客户端开发也是菜得抠脚。
|
13
chenjiangui998 2023-12-11 21:06:07 +08:00
客户端一行代码的事情, 在类中实现个 keyMap 的方法 return 一个字典映射就行
|
14
nenseso 2023-12-12 08:59:33 +08:00
https://github.com/CoderMJLee/MJExtension?tab=readme-ov-file#-model-name---json-key-mapping%E6%A8%A1%E5%9E%8B%E4%B8%AD%E7%9A%84%E5%B1%9E%E6%80%A7%E5%90%8D%E5%92%8C%E5%AD%97%E5%85%B8%E4%B8%AD%E7%9A%84key%E4%B8%8D%E7%9B%B8%E5%90%8C%E6%88%96%E8%80%85%E9%9C%80%E8%A6%81%E5%A4%9A%E7%BA%A7%E6%98%A0%E5%B0%84
``` @interface Bag : NSObject @property (copy, nonatomic) NSString *name; @property (assign, nonatomic) double price; @end @interface Student : NSObject @property (copy, nonatomic) NSString *ID; @property (copy, nonatomic) NSString *desc; @property (copy, nonatomic) NSString *nowName; @property (copy, nonatomic) NSString *oldName; @property (copy, nonatomic) NSString *nameChangedTime; @property (strong, nonatomic) Bag *bag; @end /***********************************************/ // How to map [Student mj_setupReplacedKeyFromPropertyName:^NSDictionary *{ return @{ @"ID" : @"id", @"desc" : @"description", @"oldName" : @"name.oldName", @"nowName" : @"name.newName", @"nameChangedTime" : @"name.info[1].nameChangedTime", @"bag" : @"other.bag" }; }]; // Equals: Student.m implements +mj_replacedKeyFromPropertyName method. NSDictionary *dict = @{ @"id" : @"20", @"description" : @"kids", @"name" : @{ @"newName" : @"lufy", @"oldName" : @"kitty", @"info" : @[ @"test-data", @{ @"nameChangedTime" : @"2013-08" } ] }, @"other" : @{ @"bag" : @{ @"name" : @"a red bag", @"price" : @100.7 } } }; // JSON -> Student Student *stu = [Student mj_objectWithKeyValues:dict]; // Printing NSLog(@"ID=%@, desc=%@, oldName=%@, nowName=%@, nameChangedTime=%@", stu.ID, stu.desc, stu.oldName, stu.nowName, stu.nameChangedTime); // ID=20, desc=kids, oldName=kitty, nowName=lufy, nameChangedTime=2013-08 NSLog(@"bagName=%@, bagPrice=%f", stu.bag.name, stu.bag.price); // bagName=a red bag, bagPrice=100.700000 ``` I guess 他在找这个? |