angular - Angular2: Detectar cambios en el formulario
En Angular2 4.0 tengo un FormGroup que se ve así:
this.form = this._fb.group({
a: ['', [Validators.required]],
b: ['', [Validators.required]],
c: ['', [Validators.required]],
});
¿Es posible suscribirse a valueChanged en campos individuales?
No quiero detectar cambios en la entrada c, por lo que el siguiente enfoque no funciona:
this.form.valueChanges.debounceTime(400).subscribe(data => {
// Do something
});
Respuesta #1
Puedes agregar suscripciones separadas para FormControl a y b.
this.heroForm.controls["a"].valueChanges.subscribe(data => {
// Do something
});
this.heroForm.controls["b"].valueChanges.subscribe(data => {
// Do something
});
Respuesta #2
//get form ref
@ViewChild('myForm') myForm;
//implement afterview init to your class and use
// or you can use same code with ngOnInit
ngAfterViewInit(){
this.myForm.valueChanges.debounceTime(500).subscribe(data => console.log('Form changes', data));
}Puedes usar este código, también te dará los datos de campo modificados.
