mirror of
https://github.com/tenrok/maska.git
synced 2026-05-15 11:59:38 +03:00
fix: check input value on every update
For better handling value change without directive, like vanilla case
This commit is contained in:
+5
-6
@@ -42,13 +42,12 @@ export const vMaska: MaskaDirective = (el, binding) => {
|
||||
}
|
||||
|
||||
let mask = masks.get(input)
|
||||
if (!mask) {
|
||||
if (mask) {
|
||||
mask.update(opts)
|
||||
} else {
|
||||
mask = new MaskInput(input, opts)
|
||||
masks.set(input, mask)
|
||||
} else {
|
||||
mask.update(opts)
|
||||
// delay for possible v-model change
|
||||
setTimeout(() => mask?.checkValue(input))
|
||||
}
|
||||
|
||||
// delay init to wait for v-model value
|
||||
setTimeout(() => mask?.checkValue(input))
|
||||
}
|
||||
|
||||
+4
-6
@@ -43,15 +43,13 @@ export class MaskInput {
|
||||
|
||||
private init(inputs: HTMLInputElement[], defaults: MaskOptions): void {
|
||||
for (const input of inputs) {
|
||||
const inited = this.items.has(input)
|
||||
|
||||
this.items.set(input, new Mask(parseInput(input, defaults)))
|
||||
|
||||
if (!inited) {
|
||||
if (!this.items.has(input)) {
|
||||
input.addEventListener('input', this.inputEvent)
|
||||
input.addEventListener('beforeinput', this.beforeinputEvent)
|
||||
this.checkValue(input)
|
||||
}
|
||||
|
||||
this.items.set(input, new Mask(parseInput(input, defaults)))
|
||||
this.checkValue(input)
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user