2017-09-19 1 views
0

Ich bin ziemlich neu in Angular 2 und ich bin mit einem Problem fest, wo ich alle unnötigen Sachen aus dem JSON-Objekt aus einer REST-API herausfiltern muss . Unten ist das Sample des JSON, das ich erhalte.Angular 2: Ein komplexes JSON-Objekt in ein einfaches konvertieren

{ 
    "refDataId":{ 
    "rdk":1, 
    "refDataTypeCD":"CNTRY", 
    "refDataStatusCD":"C", 
    "effStartDT":"2017-09-01", 
    "effEndDT":null, 
    "updtUserID":"EDMO", 
    "updtTS":"2017-09-05" 
    }, 
    "refDataDescs":[ 
    { 
     "rdk":1, 
     "langCD":"EN_CA", 
     "refDataNM":"Not Applicable", 
     "refDataShortNM":null, 
     "refDataDesc":"Not issued by ISO. Dummy country code for internal reference use only.", 
     "updtUserID":"EDMO", 
     "updtTS":"2017-09-05" 
    } 
    ], 
    "refCntry":{ 
    "cntryRdk":1, 
    "cntryIso2DigitCD":"0", 
    "cntryIso3DigitCD":null, 
    "cntryIsoNumericCD":0, 
    "riskTypeRdk":0 
    } 

}

{ 
    "refDataId":{ 
    "rdk":2, 
    "refDataTypeCD":"CNTRY", 
    "refDataStatusCD":"C", 
    "effStartDT":"2017-09-01", 
    "effEndDT":null, 
    "updtUserID":"EDMO", 
    "updtTS":"2017-09-05" 
    }, 
    "refDataDescs":[ 
    { 
     "rdk":2, 
     "langCD":"EN_CA", 
     "refDataNM":"Afghanistan", 
     "refDataShortNM":null, 
     "refDataDesc":null, 
     "updtUserID":"EDMO", 
     "updtTS":"2017-09-05" 
    } 

Alles, was ich aus diesen Daten brauchen, ist nur diese 2 Felder: "RDK": 2, "refDataNM": "Afghanistan"

Ich brauche zu filtern Diese Daten aus und bilden dann ein neues JSON-Array mit diesen Daten allein. Etwas wie folgt aus:

{"id":2,"itemName":"Afghanistan"}, 
{"id":3,"itemName":"Albania"} 
+0

Was Sie versucht haben, und was ist genau das Problem mit ihm? – jonrsharpe

Antwort

2

Sie so etwas wie dies versuchen könnte:

filterDate(input:any[]) { 
    const output=[]; 
    input.foreach(item => output.push({"id": item.refDataId.id, "itemName": item.refDataDescs.refDataNM})); 
    return output; 
} 
+1

Wow..ich kann dir nicht genug dafür danken. Genau das, wonach ich gesucht habe. Vielen Dank. – saikris