给自定义类的实例添加事件监听器,可以通过使用addEventListener()方法来实现。具体实现方法如下:
例如我们有一个自定义类Person,我们想要给它的实例添加addEventListener()方法来监听"changeName"事件,代码示例如下:
class Person { constructor(name) { this.name = name; }
changeName(newName) { this.name = newName; const event = new CustomEvent('changeName', { detail: { newName: newName } }); this.dispatchEvent(event); } }
const person = new Person('Tom');
person.addEventListener('changeName', function(event) {
console.log(Name changed to ${event.detail.newName}
);
});
person.changeName('Jerry'); // Output: Name changed to Jerry
在上述代码中,我们首先在Person类中定义了changeName方法,并创建一个CustomEvent对象来表示"changeName"事件。 然后,我们通过调用dispatchEvent()方法来触发该事件,最后通过addEventListener()方法来给person实例添加一个事件监听器,监听"changeName"事件,并输出新的名字。