Ich habe einige Klassen von der herkömmlichen Form umgewandelt:Kann ich TypeScript-Überladungen verwenden, wenn ich die Fettpfeilsyntax für Klassenmethoden verwende?
class TestOverloads {
private status = "blah";
public doStuff(selector: JQuery);
public doStuff(selector: string);
public doStuff(selector: any) {
alert(this.status);
}
}
statt Pfeil Funktion Ausdrücke zu verwenden:
class TestOverloads2 {
private status = "blah";
public doStuff = (selector: any) => {
alert(this.status);
}
}
um Scoping Probleme zu vermeiden, wenn die Klassenmethoden in einem Callback verwendet werden (für Hintergrund siehe here.
Ich kann jedoch nicht herausfinden, wie ich meine überladenen Funktionssignaturen neu erstellen kann. Wie würde ich meine Überladungen schreiben, wenn ich den Fettpfeil verwende?
Do Verwenden Sie keinen Fettpfeil für Methoden. Es wird eine Eigenschaft der Klasse, keine Prototyp-Methode. – garkin