[英]Custom Event on JavaScript Class
如何創建附加到類對象的事件?
我必須創建一個類,該類具有應在特定時間調用的事件。 該類看起來像這樣,當添加新的類時應該調用事件newMember
。 有效的是我將自定義事件附加到窗口並調用它,這不是我的目標。
不是 NodeJS。
class Room {
constructor() {
this.members = {}
}
addMember(data) {
if (!this.members[data.remotesid]) {
this.members[data.socket] = data.identity
//this.dispatchEvent();
} else {
console.log('Member already in room')
}
}
}
在被告知我需要使用EventTarget
擴展我的課程之后。 我現在已經制定了這個可行的解決方案。
class Room extends EventTarget {
#event;
constructor() {
super();
this.members = {}
}
addMember(data) {
if (!this.members[data.remotesid]) {
this.members[data.socket] = data
this.#event = new CustomEvent("newMember", { detail: data });
this.dispatchEvent(this.#event);
} else {
console.log('Member already in room')
}
}
}
var room = new Room();
room.addEventListener("newMember", function (e) {
console.log("newMember event ", e);
});
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.