在Angular 2中通过模块导入命名冲突 - 有没有办法防止它 [英] Name collision by module import in Angular 2 - is there a way to prevent it

查看:828
本文介绍了在Angular 2中通过模块导入命名冲突 - 有没有办法防止它的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我几乎造成了名称冲突,因为我创建了一个公共名称 Message 的类,它已存在于PrimeNG中:

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";

因为这是我的代码,我可以简单地将类重命名为其他任何东西(例如 MessageDTO )。但如果这是外部阶级,我会有一个问题。

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.

有没有办法用别名或任何其他方法导入类来处理名称冲突?我可以使用完全限定的名称而不是import来引用类,这看起来很丑,但通常是不可避免的。它在Angular 2 / TypeScript中的样子如何?

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?

推荐答案

根据 TypeScript 导入文档导入也可以重命名如下:

As per TypeScript import document imports can also be renamed same as below :

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

这篇关于在Angular 2中通过模块导入命名冲突 - 有没有办法防止它的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆