a
Tue Aug 10 2021 00:56:00 GMT+0000 (Coordinated Universal Time)
Saved by
@aziz
#javascript
class MousePositionObservable {
constructor() {
this.subscriptions = [];
window.addEventListener('mousemove',this.handleMouseMove);
}
handleMouseMove = (e) => {
this.subscriptions.forEach(sub => sub(e.clientX, e.clientY));
}
subscribe(callback) {
this.subscriptions.push(callback);
return () => {
this.subscriptions = this.subscriptions.filter(cb => cb === callback);
}
}
}
content_copyCOPY
Comments