Angular 2 ordnet http-Antwort der Instanz der Klasse @

Ich frage mich, wie ich die http-Antwort von einer Get-Anfrage am besten auf eine Klasse abbilden kann, anstatt auf ein einfaches Javascript-Objekt.

ei meinem jetzigen Versuch mache ich einfachnew ClassName(data), aber es könnte eine obskure Angular-Methode geben, die ich nicht kenne.

Hier ist mein aktueller Code:

getPost(id:number){
    return this._http.get(this._postsUrl+'/'+id)
                .map(res => new Post(res.json().data))
                .do(data => console.log(data))
                .catch(this.handleError);
}

Ich brauche Post, um eine Klasse und nicht nur eine Schnittstelle zu sein, weil ich Methoden darin habe.

Ich folgte dem HeroTutorial und dem http "developer guide" entlang und in ihremgetHeroes Methode, die sie tun:

getHeroes () {
return this.http.get(this._heroesUrl)
                .map(res => <Hero[]> res.json().data)
                .catch(this.handleError);
}

Ich habe irgendwie das @ erwart<Hero[]> Teil, um genau das zu tun: Nehmen Sie die Hero-Klasse und erstellen Sie neue Instanzen davon, aber meine Tests zeigen, dass dies nicht der Fall ist. Dies ist so ziemlich nur für Typescript, um zu wissen, was sie erwartet.

Irgendwelche Ideen ? Vielen Dank

Antworten auf die Frage(6)

Ihre Antwort auf die Frage