具有反应性目标 c 的 NSManagedObject [关闭]
Posted
技术标签:
【中文标题】具有反应性目标 c 的 NSManagedObject [关闭]【英文标题】:NSManagedObject with reactive objective c [closed] 【发布时间】:2017-08-03 05:56:01 【问题描述】:考虑一下这个 JSON
“data” : [
- - - - - some user data - - - - -
“A” : [
- - - - A’s data - - — - - - - — - -
“a” : [
- - - - - a’s data - - - - - - - - - -
“ a1” : [
- - — - - b’s data — — — ] ] ] ]
基于此,我需要检查对象 a1
内部是否存在。如果a1
存在,则意味着侦听器将使用 Reactive Objective-C 进行更新。谁能帮我解决这个问题?
【问题讨论】:
【参考方案1】:使用下面的代码。希望这会有所帮助
/*
convert JSON to NSDictionary
*/
NSDictionary *bodyDict = [utility convertStringToDictionary:jsonString];
if([bodyDict objectForKey:@“a1”])
//Post your listener notification
将字符串转换为 NSDictionary 的代码
-(NSDictionary *)convertStringToDictionary:(NSString *)jsonString
NSError * err;
NSData *data =[jsonString dataUsingEncoding:NSUTF8StringEncoding];
NSDictionary * response = nil;
if(data!=nil)
response = (NSDictionary *)[NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingMutableContainers error:&err];
return response;
【讨论】:
【参考方案2】:获取 Json 数据中唯一的 a1
值。
使用以下行获取 a1
值是否在 Json 中可用,
NSMutableArray *Arr = [[NSMutableArray alloc] init];
Arr = [JsonData valueForKeyPath:@"data.A.a.a1"];
if(Arr.count == 0) NSLog(@"Update : YES");
else NSLog(@"Update : NO");
【讨论】:
以上是关于具有反应性目标 c 的 NSManagedObject [关闭]的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Vue js 中使 localStorage 中的数据具有反应性