2016-09-09 3 views
1

Ich versuche, einen Rückruf als Funktionsparameter übergeben.Wie einen Rückruf als eine Funktion übergeben

Zum Beispiel:

public abc1(doc:any){   
     console.log('abc1');  
    } 

    public abc2(model:any){ 
     console.log('abcd2');  
    } 

xyz.load(id.replace('/', ''), abc1, abc2); 

Hier abc1 und abc2 meiner Callback-Funktionen und ich versuche, diese Funktionen in xyz.load als 2 und 3 arg zu übergeben. Alle sind in der gleichen Komponente.

Antwort

2

Sie könnten die Load-Methode wie so definieren:

load(id: string, callback1: (doc: any) => void, callback2: (model: any) => void) { 
    // do your stuff here 
    callback1(theDocument); 
    callback2(theModel); 
} 

Und es so nennen:

xyz.load(id.replace('/', ''), abc1, abc2); 
+0

was callback1 sind (theDocument); Rückruf2 (TheModel); Hier? –

+0

'abc1' und' abc2' in Ihrem Fall. 'theDocument' und' theModel' sind nur Platzhalter, da ich nicht weiß woher diese kommen. – rinukkusu

Verwandte Themen