我正在努力争取一些事情。我希望类A触发一个事件,类B将捕获该事件并将事件数据传递给它自己的方法:
class ClassA {
constructor() {
window.addEventListener("fire", function (e) { this.fired(e.detail); }); //<--- not working
}
fired(data) {
console.log("fired by: "+data);
}
}
class ClassB {
constructor() {
var event = new CustomEvent("fire", { detail: { data: "John Doe" } } );
window.dispatchEvent(event);
console.log("fired");
}
}
new ClassA(); //adds event listener
new ClassB(); //event dispatch
答案 0 :(得分:0)
看起来这个范围并不是指类。您可以在ClassA中使用箭头功能:
window.addEventListener("fire", (e) => { this.fired(e.detail); })