使用导入

时间:2017-06-02 14:31:14

标签: angularjs typescript service typescript-typings

以下是typescript

中的代码

我有以下模块导入ts-events

import {SyncEvent} from 'ts-events'

module MyModule{
export class MyService{
    }
}

我试图在同一个模块中扩展这个MyService类,但是在不同的文件中

module MyModule {

export class MyExtendedService extends MyService{ //this line throws compilation error
    }
}

如果我删除导入ts-events,它不会抛出异常并且正常工作。 我在link中尝试了解决方案,但没有工作。我怎样才能克服这个

1 个答案:

答案 0 :(得分:0)

module MyModule { ... }namespace MyModule { ... }

的弃用形式

在编写模块(ES2015 / ES6 / ESM或CommonJS)时,通常不需要namespace

您遇到的问题是这两个文件中的namespace Mymodule未共享。他们不能混在一起。

这就是为什么你得到错误的原因找不到名字MyService

您需要做的是摆脱module MyModule {...}

// a.ts
export class MyService { ... }

// b.ts
import { MyService } form './a'
export class MyExtendedService extends MyService { ... }