Ich bin neu in Typescript
und begann damit zu spielen mit Ionic
. Ich komme aus einer Java
Hintergrund und ich habe einige Probleme, sich an die Syntax und die Art der Dinge zu tun. Speziell neue Objektinstanzen erstellen und initialisieren.Instanziieren Typoskript Klasse
Kürzlich stieß ich auf dieses Problem, das ich nicht erklären kann. Ich sende eine HTTP-GET-Anfrage und bekomme ihre Antwort in einer Javascript
Object
.
mit dieser Antwort zu umgehen, ich versuche diesen Javascript
Object
ich zu einer typescript
Klasse von mir empfangen kartieren, die ich HttpResponse
genannt, eine neue Instanz davon zu schaffen, wenn ich die Antwort erhalten. Um die Dinge leichter zu machen, habe ich eine einfache Geige erschaffen, die mein Problem illustriert.
Sie können die schnell geschrieben Geigeon this link
Wie man auf den Ausgang sehen finden, ist Objektdaten dort, aber wenn ich die HttpResponse
aufrufen es schafft nur eine leere Instanz, es nichts enthält, und ich don verstehe nicht, warum es so ist.
Jede Hilfe wird geschätzt! Hier ist der Code:
class HttpResponse {
constructor(status: number = 0,
data: string = '',
headers: Object = '',
error: string = ''){}
}
class Page {
response: HttpResponse;
retrieveData(): void {
document.body.innerHTML += 'inside retrieveData()<br>';
let data = {
status: 200, data: "this is some fake data",
headers: { foo: 'foo', bar: 'bar', baz: 'baz' }
}
document.body.innerHTML +='Data: ' + JSON.stringify(data) + '<br>';
this.response = new HttpResponse(data.status, data.data, data.headers);
document.body.innerHTML += JSON.stringify(this.response);
}
}
new Page().retrieveData();
Brummen, ja, Das macht Sinn ... Ich war verwirrt darüber, dass man Eigenschaften direkt im Konstruktor deklarieren konnte, aber jetzt sehe ich klar, dass man den Sichtbarkeitsmodifikator (entweder öffentlich oder privat, denke ich) spezifizieren muss, damit das funktioniert. Wenn ich jetzt darüber nachdenke, sehe ich, dass ich nur normale Parameter im Konstruktor angegeben habe und sie nicht automatisch in Klasseneigenschaften umgewandelt habe ... froh, dass du mir geholfen hast, das zu sehen! – JorgeGRC