2
0
mirror of https://github.com/tenrok/maska.git synced 2026-06-20 20:00:34 +03:00

Fix events unsubscribe

This commit is contained in:
Alexander Shabunevich
2021-11-07 15:44:33 +03:00
parent 2823405685
commit abff14bea0
+5 -4
View File
@@ -20,6 +20,7 @@ export default class Maska {
tokens: { ...tokens, ...opts.tokens } tokens: { ...tokens, ...opts.tokens }
} }
this._el = isString(el) ? document.querySelectorAll(el) : !el.length ? [el] : el this._el = isString(el) ? document.querySelectorAll(el) : !el.length ? [el] : el
this.inputEvent = (e) => this.updateValue(e.target, e)
this.init() this.init()
} }
@@ -33,8 +34,8 @@ export default class Maska {
setTimeout(() => this.updateValue(el), 0) setTimeout(() => this.updateValue(el), 0)
if (!el.dataset.maskInited) { if (!el.dataset.maskInited) {
el.dataset.maskInited = true el.dataset.maskInited = true
el.addEventListener('input', evt => this.updateValue(evt.target, evt)) el.addEventListener('input', this.inputEvent)
el.addEventListener('beforeinput', evt => this.beforeInput(evt)) el.addEventListener('beforeinput', this.beforeInput)
} }
} }
} }
@@ -42,8 +43,8 @@ export default class Maska {
destroy () { destroy () {
for (let i = 0; i < this._el.length; i++) { for (let i = 0; i < this._el.length; i++) {
const el = findInputElement(this._el[i]) const el = findInputElement(this._el[i])
el.removeEventListener('input', evt => this.updateValue(evt.target, evt)) el.removeEventListener('input', this.inputEvent)
el.removeEventListener('beforeinput', evt => this.beforeInput(evt)) el.removeEventListener('beforeinput', this.beforeInput)
delete el.dataset.mask delete el.dataset.mask
delete el.dataset.maskInited delete el.dataset.maskInited
} }