Angular 5/打字稿:Classes/Interfaces 在命名空间内导出
Angular 5/Typescript: Classes/Interfaces exported within a namespace
我有一个用 typescript 构建并用 Angular 5 编译器编译的库。现在,很少有 classes/interfaces 是在命名空间内定义的。
export namespace A{
export class C1 {
}
export interface I1{
}
}
当我使用 angular 5 ngc 编译器编译此代码时,它生成包含 [null] 值的 filename.metadata.json 文件。
当我在我的 Angular 5 应用程序中使用这个库时,它给出了这个 null .metadata.json 文件的错误。
TypeError: Cannot read property 'version' of null
注意:
这是与 Angular 4.3.3 一起工作的。
此外,当我使用 typescript 编译器 tsc 时,它甚至不会生成 .metadata.json 文件。因此没有错误。
在 Angular 5.1.2 版本中,Angular 团队已修复编译器中的问题。根据他们的修复,他们不再发出无效的“.metadata.json”文件。因此,对于仅包含嵌套命名空间的文件,不会生成“.metadata.json”文件。
我有一个用 typescript 构建并用 Angular 5 编译器编译的库。现在,很少有 classes/interfaces 是在命名空间内定义的。
export namespace A{
export class C1 {
}
export interface I1{
}
}
当我使用 angular 5 ngc 编译器编译此代码时,它生成包含 [null] 值的 filename.metadata.json 文件。
当我在我的 Angular 5 应用程序中使用这个库时,它给出了这个 null .metadata.json 文件的错误。
TypeError: Cannot read property 'version' of null
注意: 这是与 Angular 4.3.3 一起工作的。 此外,当我使用 typescript 编译器 tsc 时,它甚至不会生成 .metadata.json 文件。因此没有错误。
在 Angular 5.1.2 版本中,Angular 团队已修复编译器中的问题。根据他们的修复,他们不再发出无效的“.metadata.json”文件。因此,对于仅包含嵌套命名空间的文件,不会生成“.metadata.json”文件。