arv - Använd gränssnitt med olika namnrymder i TypeScript


Jag vill skapa ett gränssnitt i 'parent.a'-namnrymden och jag vill använda det gränssnittet i 'parent'-namnrymden.

Finns det något sätt att göra det, vänligen hjälp mig med detta.

Jag har hittat en lösning för att få åtkomst till klasser från olika namnrymder och få åtkomst till en klass från namnrymden, men jag behöver arbeta med gränssnitt, inte klasser.

mitt exempel:

module Parent.AInterface {    

    export interface AInterface {
        setParent(): void;
    }

} 

Min andra modul

module Parent {

    export class ParentClass implements AInterface {

    }

}

medan jag gör det.. får jag ett felmeddelande som säger Kan inte hitta namnet 'AInterface'

var snäll och hjälp mig med detta.

Svar #1

Du bör nämna modulnamn innan interfacenamn:

module Parent.AInterface {    

    export interface AInterface {
        setParent(): void;
    }

} 


module Parent {

    export class ParentClass implements AInterface.AInterface {
        setParent() {
        }
    }

}

Detta fungerar bra för mig i TypeScript-lekplatsen.

Svar #2

Parent.ts

///<reference path="./Parent.AInterface.ts" />
module Parent {
     export class ParentClass implements AInterface.AInterface {}
}