MJExtension
MJExtension copied to clipboard
父类、子类中都存在嵌套模型的数组,该如何处理
描述bug
mj_objectClassInArray 只获取了当前类的配置,如果子类执行后,不会获取父类中的配置
目前我是这么处理的,是否还有其他办法呢?
@interface MyA : NSObject
@property (nonatomic, strong) NSArray *list;
@end
@implementation MyA
+ (NSDictionary *)mj_objectClassInArray {
return @{
@"list" : MyA.class
};
}
@end
@interface MyB : MyA
@property (nonatomic, strong) NSArray *bList;
@end
@implementation MyB
+ (NSDictionary *)mj_objectClassInArray {
NSDictionary *superDict = [super mj_objectClassInArray];
NSMutableDictionary *dict = @{
@"bList" : MyB.class
}.mutableCopy;
if (superDict) {
[dict addEntriesFromDictionary:superDict];
}
return dict;
}
@end
你应该这样做:
- 首先判断父类是否实现了
mj_objectClassInArray
- 然后将父类跟子类进行合并