Angular 5 / Typescript:在命名空间内导出的类/接口

时间:2017-12-04 14:55:45

标签: angular typescript angular5 aot

我有一个用typescript构建的库,并使用Angular 5编译器编译。现在,在命名空间内定义的类/接口很少。

export namespace A{
    export class C1 {
    }
    export interface I1{
    }
}

当我使用angular 5 ngc编译器编译此代码时,它会生成包含[null]值的filename.metadata.json文件。

当我在Angular 5应用程序中使用此库时,它会为此null .metadata.json文件提供错误。

  

TypeError:无法读取属性'版本'为null

注意: 这与Angular 4.3.3一起使用。 此外,当我使用typescript编译器tsc时,它甚至不生成.metadata.json文件。因此没有错误。

1 个答案:

答案 0 :(得分:0)

在Angular 5.1.2版本中,Angular团队已在编译器中修复了该问题。根据他们的修复,他们会再发出无效的“.metadata.json”文件。因此,对于仅包含嵌套命名空间的文件,不会生成“.metadata.json”文件。

参考:https://github.com/angular/angular/issues/20479