有没有方法可以创建一个类,该类将扩展EventTarget DOM API 类?
考虑一下,我有这个类:
class MyClass extends EventTarget {
constructor() {
super();
}
private triggerEvent() {
this.dispatchEvent(new Event('someEvent'));
}
}
当我尝试实例化它时,会出现以下错误:
ERROR TypeError: Failed to construct 'EventTarget': Please use the 'new' operator, this DOM object constructor cannot be called as a function.
看起来这是因为该API要求使用适当的ES2015类才能正常工作,但我将我的代码转译为ES5级别。
如果我使用以下构造函数:
constructor() {
Reflect.construct(EventTarget, [], MyClass);
}
在尝试调用 addEventListener()
实例时,我遇到了以下错误:
ERROR TypeError: Illegal invocation
。
另外,我还遇到了 TypeScript 编译错误:
error TS2377: 派生类的构造函数必须包含一个 'super' 调用。
。