Wir versuchen, ein eigenartiges Verhalten von Typoskript herauszufinden. In den folgenden zwei Codebeispielen sollte ein jQuery-Objekt durch Typoskript geändert werden. In dem Beispiel, das einwandfrei funktioniert, verweisen wir auf das jQuery-Objekt, indem wir die Selektor-Engine in einer Methode verwenden, nachdem unsere Typoskript-Klasse instanziiert wurde. Dies funktioniert:Ist es möglich, ein jQuery-Objekt als Konstruktorparameter an ein Typoskriptobjekt zu übergeben?
namespace Company.Module {
export class GenericService {
private statefulObject: JQuery;
public constructor() {
}
private _toggleObjectState(): void {
this._statefulObject.toggleClass('text-hide text-success');
}
public SetObjectState(): void {
this.statefulObject = $('#statefulObject');
_toggleObjectState();
}
}
}
Während das jQuery-Objekt im Konstruktor funktioniert nicht:
namespace Company.Module {
export class GenericService {
private statefulObject: JQuery;
public constructor(_statefulObject: JQuery) {
this.statefulObject = _statefulObject;
}
private _toggleObjectState(): void {
this._statefulObject.toggleClass('text-hide text-success');
}
public SetObjectState(): void {
_toggleObjectState();
}
}
}
Wir möchten verstehen, warum dies der Fall ist.
Ihr erstes Beispiel wird nicht kompiliert. – Paleo
Ich stimme für das Schließen dieser Frage als Off-Topic ab, da der Autor sie schließen möchte. – Paleo