Veo un comportamiento incoherente en el que la interfaz de usuario no se actualiza correctamente para ciertos valores escritos en un campo vinculado a [ngModel] .
Mi plantilla:
<input type="number" [ngModel]="displayValue" (ngModelChange)="updateValue($event)" />archivo TS:
export class HelloComponent { displayValue = 0; public updateValue(displayValue: number) { const validatedValue = this.constrainValue(displayValue); this.displayValue = validatedValue; } private constrainValue(value: number) { return (value > 100) ? 100 : value; } }100 (es decir, 230 ), constrainValue lo ajusta a 100 y la interfaz de usuario se actualiza como se esperaba.23456 ), constrainValue lo ajusta a 100 pero la interfaz de usuario solo actualiza los primeros 3 números, por lo que obtengo 10056 .Stackblitz: https://stackblitz.com/edit/angular-ivy-eleb1u?file=src%2Fapp%2Fhello.component.ts