2016-04-06 22 views
19

Ho seguito la documentazione introduttiva di Angular2 per far partire la mia app, sono riuscito a recuperare oggetti JSON da un file locale e visualizzarli in modelli angular2. Tuttavia attualmente si basa sulle classi angolari che corrispondono esattamente alla struttura degli oggetti nel mio file JSON.Angolare 2 che analizza gli oggetti JSON in classi angolari

Eventualmente avrò bisogno che la mia app funzioni con JSON-LD, che ha nomi di proprietà come "@id". Ho fatto qualche ricerca su google e sembra che RxJS abbia le funzionalità che sto cercando ma non sono sicuro da dove iniziare a interrompere l'associazione automatica da alcuni dati JSON direttamente nelle mie classi angular2, e invece essere in grado di guardare qualcosa che è etichettato come "@id" nel JSON e impostare il valore di SomeClass.id

codice attuale che produce automaticamente una matrice di una classe persona:

getPeople(){ 
    return this._http.get(this._peopleUrl) 
     .map(response => <Person[]> response.json().data) 
     .do(data => console.log(data)) //debug to console 
     .catch(this.handleError); 
} 

fine per JSON come questo:

[ 
{ 
    "id":"1", 
    "name":"tessa" 
}, 
{ 
    "id":"2", 
    "name":"jacob" 
} 
] 

Ma ovviamente fallirebbe per JSON come questo:

[ 
{ 
    "@id":"1", 
    "name":"tessa" 
}, 
{ 
    "@id":"2", 
    "name":"jacob" 
} 
] 

La mia classe è semplice (al momento :-))

export class Person { 
    constructor(
    public id:number, 
    public name:string, 
){} 
} 

Qualcuno mi può punto nella giusta direzione per un po 'di documentazione/esempi di complesso mappatura/JSON ingannevole alle classi in angular2?

risposta