modal: use arrow function to avoid 'this' naming collision

This commit is contained in:
Harvey Tindall
2021-05-07 14:30:30 +01:00
parent 2816c6277d
commit 326c2cf70a

View File

@@ -7,9 +7,9 @@ export class Modal implements Modal {
closeEvent: CustomEvent;
constructor(modal: HTMLElement, important: boolean = false) {
this.modal = modal;
this.openEvent = new CustomEvent("modal-open-" + modal.id)
this.closeEvent = new CustomEvent("modal-close-" + modal.id)
const closeButton = this.modal.querySelector('span.modal-close')
this.openEvent = new CustomEvent("modal-open-" + modal.id);
this.closeEvent = new CustomEvent("modal-close-" + modal.id);
const closeButton = this.modal.querySelector('span.modal-close');
if (closeButton !== null) {
this.closeButton = closeButton as HTMLSpanElement;
this.closeButton.onclick = this.close;
@@ -26,7 +26,7 @@ export class Modal implements Modal {
}
this.modal.classList.add('modal-hiding');
const modal = this.modal;
const listenerFunc = function () {
const listenerFunc = () => {
modal.classList.remove('modal-shown');
modal.classList.remove('modal-hiding');
modal.removeEventListener(window.animationEvent, listenerFunc);