Angular 2中的模块导入名称冲突 - 是否有方法可以防止它发生?

23

我差点引起了一个名称冲突,因为我创建了一个常见名称的类Message,而它已经存在于PrimeNG中:

import {Message} from "primeng/primeng";
import {Message} from "./dto";
因为这是我的代码,我可以简单地将类重命名为其他任何名称(比如MessageDTO)。但如果这是外部类,我就会遇到问题。
是否有任何方法可以使用别名导入类,或者其他处理名称冲突的方式?在Java中,您可以使用完全限定的名称引用类而不是导入,这看起来很丑,但通常是不可避免的。在Angular 2/TypeScript中是什么样子?

在 tsconfig.json 中将编译器选项 "moduleResolution" 设置为 "classic"。 - Vinay Pandya
1个回答

59

根据TypeScript 导入文档,导入也可以像下面这样重命名:

import { Message } from "primeng/primeng";
import { Message as MessageDTO } from "./dto";

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接