bind-Funktion und diese in typescript

Wollte ich eine einfache Implementierung Kontext verbindlich, aber es funktioniert nicht in Typoskript.
Hier ist mein code:

class Engine {
    //some code...

    spriteController(sprite: Sprite, callbackfn: (ctx: CanvasRenderingContext2D) => void) {
        callbackfn.bind(new SpriteController(sprite), [this._ctx]);
    }

    //code again ...
}

Wenn ich spriteController Methode in eine andere Datei wie folgt:

engine.spriteController(sprite, function(ctx) {
    this.moveRight() //access to the spriteController class
})

Ich möchte in der Lage sein zu verwenden, die SpriteController Klasse innerhalb der callback.
In JS das erste argument (in der bind () - Aufruf bind 'dieser' auf das angegebene Objekt. Aber in Typoskript, Funktionen erstellt, aus der Funktion.binden sind immer erhalten 'diese'.
Wie das zu erreichen ist in TypeScript?

Könnten Sie bitte erklären, mit anderen Worten, was sind Sie versuchen zu erreichen?

InformationsquelleAutor Seb Bizeul | 2015-12-28

Schreibe einen Kommentar