3
當在attachedCallback
中註冊事件偵聽器時,是否有責任確保這些事件在detachedCallback
中再次被刪除?清理自定義元素中的事件偵聽器
正如下面的最小樣本所示,該模式是相當可預測的,所以我想知道瀏覽器是否已經照顧到了這一點?
<my-element>0</my-element>
class MyElement extends HTMLElement {
createdCallback() {
this.update = this.update.bind(this);
}
attachedCallback() {
this.addEventListener("click", this.update);
}
detachedCallback() {
this.removeEventListener("click", this.update);
}
update() {
this.textContent = Math.random();
}
}
document.registerElement("my-element", {
prototype: MyElement.prototype
});
非常好,這就是我希望聽到的 - 謝謝! – AnC