【问题标题】:Name collision by module import in Angular 2 - is there a way to prevent itAngular 2中模块导入的名称冲突 - 有没有办法防止它
【发布时间】:2017-04-02 04:40:40
【问题描述】:

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

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

因为这是我的代码,我可以简单地将类重命名为其他任何名称(例如 MessageDTO)。但如果这是外部课程,我会遇到问题。

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

【问题讨论】:

  • 将编译器选项“moduleResolution”设置为“经典”。在 tsconfig.json

标签: angular typescript import name-collision


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2013-09-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-08-21
    • 2011-07-17
    • 2016-04-30
    相关资源
    最近更新 更多