2017-02-14 4 views
2

nicht festlegen/abrufen Ich habe ein Problem im Zusammenhang mit dem Festlegen oder Abrufen des Werts der erweiterten Klasse in Typescript und angular 2.Kann die Eigenschaft der erweiterten Klasse in Typoskript

Ich habe eine Klasse A mit diesen Eigenschaften:

export class A { 
    protected name: string; 

    set setName(name: string) { 
     this.name= name; 
    } 

    get getName() { 
     return this.name; 
    } 
} 

Ich bin der Klasse A von B erstreckt, wie:

export class B extends A implements OnInit { 
    ngOnInit() { 
     this.setName('User'); 
    } 
} 

Dies gibt den Fehler als:

this.setName is not a function 

Ich nehme an, dass es aussagt, dass es in Klasse B keine setName genannte Funktion gibt.

Wie lege ich den Wert fest, der in der Funktion verwendet wird, die die Klasse A erweitert? Was ist der beste Weg, da die Initialisierung des Konstruktors für mich nicht funktioniert hat?

Ich kann auch nicht die neue Instanz der Klasse B erstellen und den Wert festlegen. Wenn ich irgendwo falsch liege, wo könnte mich jemand korrigieren?

Antwort

4

Wenn es ein Setter ist, sollte es

this.setName = 'User'; 
+0

Danke für die Korrektur sein. Ich machte den falschen Weg. (facepalm) – PaladiN

+0

Wir waren alle dort: D –

Verwandte Themen