Name collision by module import in Angular 2 - is there a way to prevent it

时间:2016-11-18 10:51:11

标签: angular typescript import name-collision

I've almost caused a name collision, because I've created a class with common name Message, which already exists in PrimeNG:

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

Because it is my code, I could simply rename the class to anything else (like MessageDTO). But if this was the external class, I'd have an issue.

Is there any way to import class with alias, or any other mean to deal with name conflicts? I Java you can refer to class using fully qualified name instead of import, which looks ugly but is often unavoidable. How it looks like in Angular 2/TypeScript?

1 个答案:

答案 0 :(得分:30)

根据TypeScript import document,导入也可以重命名如下:

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