当模块名称冲突时,如何从 typescript.d.ts 文件访问接口



如何从 esri.dijit 中访问 i1?

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 {}
    }
}

最新更新