Как получить доступ к интерфейсу из файла TeampScript.d.ts, когда имена модулей конфликтуют?
-
21-12-2019 - |
Вопрос
Как я могу получить доступ к I1 из esri.dijit?
module dijit {
interface i1 {};
}
module esri {
module dijit {
interface i2 {}
interface i3 extends dijit.i2, dijit.i1 {}
}
}
.
Смотрите
Решение
Две вещи.Сначала вам нужно экспортировать интерфейс для его использования за пределами модуля так:
module dijit {
export interface i1 {};
}
.
Во-вторых, если вы собираетесь использовать одно и то же имя, локально, глобальное имя dijit
, будет затенено.Таким образом, вам нужно создать псевдоним:
module dijit {
export interface i1 {};
}
import alias = dijit;
.
Теперь ваш полный код:
module dijit {
export interface i1 {};
}
import alias = dijit;
module esri {
module dijit {
export interface i2 {}
interface i3 extends dijit.i2, alias.i1 {}
}
}
. Не связан с StackOverflow