2017-05-09 2 views
0

Ich versuche, den Knoten Express send Methode der Response Art zu überschreiben. Das Verfahren ist vom Typ Send, die als solche definiert:Typescript überschreiben Express senden Funktion mit Hybrid-Schnittstelle

interface Send { 
    (status: number, body?: any): Response; 
    (body?: any): Response; 
} 

Mein Ziel ist die lokale Protokollierung der Antwort sendet mit Express hinzufügen, aber ich kann nicht eine Implementierung dieser Art machen, auch als Funktion wie in anderen Fragen erläutert like this.

Antwort

0

Diese Schnittstelle eine Funktion mit zwei Unterschriften beschreibt, können Sie es wie so implementieren:

const fn: Send = (first?: any, second?: any) => { 
    if (first && second) { 
     // deal with (status: number, body: any) 
    } else if (first) { 
     // deal with (status: number) or (body: any) 
    } else { 
     // deal with() 
    } 

    return new Response(); 
} 
+0

zwar technisch korrekt, die '= (...) =>' 'Format this' auf die aktuelle Klasse bindet in meinem Setup, so dass es nicht mit Express-Sendefunktion funktioniert. Stattdessen habe ich [express-mung] (https://www.npmjs.com/package/express- mung) gefunden und genutzt, das erreicht, was ich ursprünglich machen wollte. – nonelse