Comment accéder à une interface depuis un fichier typescript.d.ts lorsque les noms de modules sont en conflit ?

StackOverflow https://stackoverflow.com//questions/21046461

  •  21-12-2019
  •  | 
  •  

Question

Comment puis-je accéder au i1 depuis esri.dijit ?

module dijit {
    interface i1 {};
}

module esri {
    module dijit {
        interface i2 {}
        interface i3 extends dijit.i2, dijit.i1 {}
    }
}

Voir Exemple d'aire de jeux.

Était-ce utile?

La solution

Deux choses.Vous devez d'abord exporter une interface pour qu'elle soit utilisable en dehors du module donc :

module dijit {
    export interface i1 {};
}

Deuxièmement, si vous comptez utiliser le même nom localement, le nom global dijit va être ombragé.Il faut donc créer un alias :

module dijit {
    export interface i1 {};
}
import alias = dijit;

Maintenant votre code complet :

module dijit {
    export interface i1 {};
}
import alias = dijit;

module esri {   
    module dijit {
        export interface i2 {}
        interface i3 extends dijit.i2, alias.i1 {}
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top