Warum kann ich auf Typoskript private-member, wenn ich nicht in der Lage sein?

Ich bin auf der Suche, um die Umsetzung der privaten Mitglieder in Schriftlicher, und ich finde es ein wenig verwirrend. Intellisense nicht erlauben, Zugriff auf private member, aber in reinem JavaScript, es ist alles da. Das macht mich denken, dass TS nicht umsetzen private Mitglieder richtig.
Irgendwelche Gedanken?

class Test{
  private member: any = "private member";
}
alert(new Test().member);
  • Sie Wundern sich, warum IntelliSense nicht geben Ihnen die privaten member auf die Zeile mit dem alert()?
  • NÖ. Ich Frage mich, warum TS hat ein eigenes, wenn, dass ist nur ein Zucker für intellisense, und nicht wirklich für die JavaScript kompiliert zu. Dieser code ausgeführt, der in typescriptlang.org/Playground Alarme private-member-Wert.
  • Wie bereits erwähnt, müssen Sie Elemente deklarieren wie eine variable in einem privaten Rahmen zu haben, Sie privat. Ich vermute, Maschinenschrift, tut dies nicht, weil es ineffizient vs hinzufügen, um den Prototyp. Es auch Durcheinander mit der type-definition (die privaten Mitglieder sind nicht wirklich Teil der Klasse)
  • Wenn Sie möchten, dass die realen privaten Variablen, die vorhanden sind, auf dem Prototyp, dauert es ein gewisser Aufwand, aber ich habe geschrieben eine Bibliothek namens ClassJS, die genau auf GitHub: github.com/KthProg/ClassJS.
InformationsquelleAutor Sean Feldman | 2012-10-03
Schreibe einen Kommentar