El evento de cambio solo se llama después de que el foco de la entrada ha cambiado. ¿Cómo puedo hacer que el evento se active en cada pulsación de tecla?
<input type="text" [(ngModel)]="mymodel" (change)="valuechange($event)" />
{{mymodel}}
El segundo enlace cambia en cada pulsación de tecla por cierto.

Use
ngModelChangedividiendo la[(x)]sintaxis en sus dos partes, es decir, enlace de datos de propiedad y enlace de evento:También funciona para la tecla de retroceso.
fuente
El evento (keyup) es tu mejor apuesta.
Veamos por qué:
Entonces (keyup) es el más seguro, ya que ...
fuente
keyupes sin duda una de las opciones más seguras, sin embargo, elinputevento está un paso por delantekeyup.keyupa diferenciainput, no funciona si el valor del cuadro de texto se cambia de otra manera, por ejemplo, el enlace.(change)junto con una solución alternativa y algo más. ¡La respuesta aceptada apesta totalmente!(ngModelChange)?fuente
keydowno en sukeyuplugar. Algunas teclas simplemente no se activankeypress. Ver también stackoverflow.com/questions/4843472/…Una forma diferente de manejar tales casos es usar formControl y suscribirse
valueChangescuando se inicialice su componente, lo que le permitirá usar operadores rxjs para requisitos avanzados como realizar solicitudes http, aplicar un rebote hasta que el usuario termine de escribir una oración, tome el último valor y omitir anterior, ...fuente
FormGroupEl evento secreto que mantiene ngModel angular síncrono es la entrada de llamada de evento . Por lo tanto, la mejor respuesta a su pregunta debería ser:
fuente
archivo .ts
fuente
Lo que estás buscando es
Luego haga lo que quiera con los datos accediendo al enlace
this.mymodelen su archivo .ts.fuente
En mi caso, la solución es:
fuente
Para los formularios reactivos, puede suscribirse a los cambios realizados en todos los campos o solo en un campo en particular.
Obtenga todos los cambios de un FormGroup:
Obtenga el cambio de un campo específico:
fuente
He estado usando keyup en un campo numérico, pero hoy noté en Chrome que la entrada tiene botones arriba / abajo para aumentar / disminuir el valor que no se reconoce por keyup.
Mi solución es usar keyup y cambiar juntos:
Las pruebas iniciales indican que esto funciona bien, se volverá a publicar si se encontraron errores después de más pruebas.
fuente