我有一个模块,我在其中使用从Element
内部库隐式导入的"dom"
类。
但是,在同一模块中,我想定义一个自己的Element
类。当然,这会导致名称冲突和痛苦的世界。
是否可以通过DOM库重命名隐式Element
类?
理想情况下,我想要这样的东西:
import * as DOM from 'dom'; // <-- what do I write here?
class Element { // <-- my element
private element: DOM.Element; // <-- reference to the original DOM element
}
答案 0 :(得分:0)
到目前为止,我发现的唯一解决方案是定义一个指向原始DOM符号的自定义类型:
type DOMElement = Element;
namespace Acme {
class Element {
private element: DOMElement;
}
}
这里的想法是将我的自定义Element类隐藏在命名空间中,并使用自定义类型间接引用DOM元素。
但是,更好的方法将受到高度赞赏。