I'm trying to make my IMask input update its value to be cleared when it is clicked but IMask is throwing a warning:
Element value has changed outside the mask. Sync the mask using mask.updateValue() for it to work correctly.
I've tried to use all of the ways I could find to update the value, such as mask.updateValue() though I still see the error.
import IMask from "imask";
import {contador} from "./lib/contador";
import {NewGame} from "./lib/novoJogo";
import {SorteioNumero} from "./lib/sorteioDoNumero";
let input = document.querySelector("#number");
const mask = IMask(input, {
  mask: Number,
  min: 0,
  max: 10,
});
input.addEventListener("click", () => {
  input.value = "";
  mask.updateValue();
}); 
 
                        
You are seeing the warning regarding the value being out of sync because you are updating the input field's value directly on the DOM element rather than using the
IMaskobject, this updates the input field howeverIMaskcannot see this change.The correct way to update the value of an
IMaskinput is to directly update the value of the.valueproperty of theIMaskobject you created:See 'Get/set value and unmasked value' here: https://imask.js.org/guide.html#masked-base