TypeScript模块引用

时间:2013-10-21 20:31:56

标签: inheritance module compiler-errors typescript

查看以下TypeScript代码:

module events {
    export class Event {
    }
}

module display.events {
    export class DisplayEvent extends events.Event {
    }
}

基本上,我们的想法是模块DisplayEvent中的display.events类是模块Eventevents类的后代。但是模块命名存在问题,因此编译器搜索Event类是display.events模块:

error TS2094: The property 'Event' does not exist on value of type 'events'.

有没有办法让编译器(版本0.9.1.1)理解模块的结构?

2 个答案:

答案 0 :(得分:2)

目前没有办法在不重组对象名称的情况下执行此操作。它基本上是一个运行时问题 - 变量是词法范围的,'事件'已被遮蔽。

答案 1 :(得分:1)

为什么不将代码更改为这样(哪个有效)?

module display.events {
    export class Event {
    }
}

module display.events {
    export class DisplayEvent extends events.Event {
    }
}