具有反应性目标 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 [关闭]的主要内容,如果未能解决你的问题,请参考以下文章

TypeScript:如何使函数具有反应性

如何在 Vue js 中使 localStorage 中的数据具有反应性

如何使 Vue 3 对象属性具有反应性

R Shiny:如何使多个元素在添加/删除按钮上下文中具有反应性?

云原生-Quarkus反应性入门

如何更新反应性对象(和一般属性)?