Welcome to Software Development on Codidact!
Will you help us build our independent community of developers helping developers? We're small and trying to grow. We welcome questions about all aspects of software development, from design to code to QA and more. Got questions? Got answers? Got code you'd like someone to review? Please join us.
In angular-imask how do I get the IMask class?
Using Angular-IMask, I'm programatically updating the field that has IMask. So I'm getting the error:
"Element value was changed outside of mask. Syncronize mask using mask.updateValue() to work properly."
How can I get imask object so I can call updateValue() ? I set the component only on the template, so I don't have any object in the component I can access.
HTML:
<input class="form-control" ngbDatepicker #dpStart="ngbDatepicker" type="text" id="dpStart"
(dateSelect)="syncDateFields($event, 'start')" (change)="syncDateFields($event.target.value, 'start')"
name="start" placeholder="Start" [imask]="imaskDate" [unmask]="false" font />
<button class="btn btn-outline-secondary calendar" (click)="dpStart.toggle()" type="button">
<i class="fa-solid fa-calendar-days"></i>
</button>
Component
imaskDate = {
mask: '00/00/0000',
lazy: false,
overwrite: true
}
syncDateFields(date: NgbDate | string, campo: string) {
// I want to access imask object here
// example: imask.updateValue()
}
The problem happens when I click the datePicker button and select a date from it.
The datepicker object is from the ng-bootstrap module: NgbDatePicker.
2 comment threads