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:
+5
-4
@@ -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
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user