代码:
class MyEvent extends Event {
constructor(name) {
super(name);
}
}
var event = new MyEvent("mousemove");
Run Code Online (Sandbox Code Playgroud)
运行时错误:
未捕获的类型错误:无法构造“事件”:请使用“new”运算符,此 DOM 对象构造函数不能作为函数调用。
有没有解决的办法?
未捕获的类型错误:无法构造“事件”:请使用“new”运算符,此 DOM 对象构造函数不能作为函数调用。
问题在于Event v8 运行时内部的定义。它不适合基于class扩展。过去也存在同样的错误问题,即以下内容曾经失败:
class MyError extends Error {
constructor(message) {
super(message);
}
}
const error = new MyError("some message");
Run Code Online (Sandbox Code Playgroud)
所以目前来说。您无法Event在 TypeScript(或 ES6 类)中扩展该类。
| 归档时间: |
|
| 查看次数: |
4706 次 |
| 最近记录: |