Ich wechsle um den neuen HttpClient in eckigen zu verwenden.Muster für den Umgang mit Zuordnung von API-Objekten zu UI-Modell-Objekten
Die API am Aufruf gibt JSON-Daten in einem Format zurück. Ich möchte diese Daten nehmen und in eine Typoskriptmodellklasse umwandeln, die für die Benutzeroberfläche geeignet ist.
Die Art, wie ich dies zuvor getan habe, war mit der Kartenfunktion z.
Wo die Kartenfunktion das schwere Heben der Transformation der API-Antwort intro ein Modellobjekt z.
const mapFunction =
(response: Response) => {
const data = response.json();
const contacts: Contact[] = [];
let i = 0;
for (const result of data.resourceResults) {
i = i + 1;
const contact: Contact = new Contact();
contact.role = result.r
Ich scheint dies recht umständlich, und ich bin im Grunde nach einer Möglichkeit, Objekte aus dem api Antworttyp zum ui Modelltyp zuordnen, ohne eine eigenen Map-Funktion für jede Anforderung zu verwenden.
Ich denke, es gibt keinen anderen Weg, vielleicht können Sie einen Auto-Mapper verwenden: https://github.com/loedeman/AutoMapper/wiki/Getting-started, aber es ist eine Abhängigkeit zu Ihrem Projekt hinzufügen – mickaelw
Sie könnten zunächst einmal tun so etwas wie const mapFunction = (Antwort: any []): Kontakt [] => { const data = response; Rückgabe response.map (Ergebnis => { const Kontakt = neuer Kontakt(); contact.r = Ergebnis.r; Rückkontakt; }) –
in Angular 5: zurück this.httpClient.get (url, {headers: headers)) .catch (errorFunction); siehe https://angular.io/guide/http –
Eliseo