En JavaScript, ¿cómo puedo eliminar un detector de eventos que se agregó mediante una función de flecha con parámetros?
class myClass { animateIn(callback) { // Add an event listener for the end of the animation this.myDomElement.addEventListener( 'animationend', (e) => this.onAnimateInAnimationEnd(e, callback) ); } onAnimateInAnimationEnd = (e, callback) => { // Remove the event listener for the end of the animation this.myDomElement.removeEventListener( 'animationend', (e) => this.onAnimateInAnimationEnd(e, callback) ); } } Entiendo que usar this.onAnimateInAnimationEnd en lugar de (e) => this.onAnimateInAnimationEnd(e, callback) eliminará el detector de eventos correctamente. Sin embargo, eso no me permite acceder al parámetro de callback de llamada dentro onAnimateInAnimationEnd .
¿Cómo hago para que funcione tanto con e , que está relacionado con el evento que estoy escuchando, como con callback , que no está relacionado con ese evento?