我想删除已经在事件监听器中的事件监听器。我的代码是
public componentDidMount() {
this.drags();
}
private drags(){
const e = ReactDOM.findDOMNode(this.container);
if (e) {
e.addEventListener("mousedown", (event: any) => {
....
parent = ReactDOM.findDOMNode(this).parentNode;
if (parent) {
parent.addEventListener("mousemove", (event1: any) => {
....
const eDrag = parent.getElementsByClassName("draggable");
eRes[0].addEventListener("mouseup", (event3: any) => {
**// HERE I WANT TO REMOVE LISTENER OF PARENT OF MOUSE MOVE**
}
}
}
}
}
}
有人可以帮助我吗?
答案 0 :(得分:0)
不要使用匿名函数作为事件处理程序,而是使用命名函数。
所以,如果你这样添加监听器:
function doSomething() {
// something
}
window.addEventListener('mousedown', this.doSomething);
您可以将其删除,如:
window.removeEventListener('mousedown', this.doSomething);