2017-05-29 1 views
0

In Komponente:angular 2 Übergeben der Service-Methode als Parameter in der Komponente?

myFunction(): void { 
    this.myOtherFunctoin(this._myService.serviceMethod); 
} 

private myOtherFunction(func : Function){ 
    func(); 
} 

In Dienst ruft

serviceMethod(){ 
    this.somethingMethod(); // "this" is coming as undefined in debugger 
    this.somethingVariable = true; 
} 

I bind(this) Methode als Parameter wie Delegaten in C# mache ich etwas falsch hier

Antwort

2

Nutzung übergeben wollte, oder anonyme Pfeilhülle:

this.myOtherFunction(this._myService.serviceMethod.bind(this)) 
+0

Ich habe das wirklich müde, aber aus irgendeinem Grund funktionierte nicht für mich, den Verweis auf "dieses" falsch zu bekommen. Für mich funktioniert das so: ** tempVariable = this._myService.serviceMethod; this.myOtherFunction (this._myService.serviceMethod.bind (tempVariable)); ** – vaira

Verwandte Themen