2016-04-26 2 views
1

I haben:erstrecken Eigenschaft der Basisschnittstelle

interface A { 
    x: { 
    f1(s: string): string; 
    }; 
} 

interface B extends A { 

} 

Ich möchte A.x auszudehnen f2 in B enthalten (ohne f1 bis neu deklarieren aufweist). Etwas wie:

interface B extends A { 
    x: { 
    f2(s: string): string; 
    }; 
} 

ist das möglich? irgendwelche Referenzen/Dokumente um das wäre großartig.

Antwort

2

würde ich Generika, so etwas wie:

interface X1 { 
    f1(s: string): string; 
} 

interface X2 { 
    f2(s: string): string; 
} 

interface A<T> { 
    x: T 
} 

interface A1 extends A<X1> {} 

interface A2 extends A<X2> {} 
+0

ich will x in B sowohl f1 & f2 haben. macht diese Lösung das? – Srinivas

+0

@Srinivas, wenn Sie meinen Code zu "Schnittstelle X2 erweitert X1" dann ja ändern. –

+0

funktioniert! Vielen Dank :) – Srinivas

Verwandte Themen