2016-07-10 55 views
5

Ho un modulo con alcuni widget <input type="text"> e ho notato che ControlGroup.valueChanges viene richiamato sul database iniziale quando si utilizza [ngFormModel] e ngControl.valore Angular2 ControlGroup sul binding iniziale

Ciò significa che l'utente ritiene che il modulo sia stato modificato al momento del caricamento iniziale.

È normale o dovrei utilizzare un altro osservabile per tenere traccia delle modifiche apportate dall'utente?

Sto usando Angular2 RC3 e la seguente versione di importazione per le forme:

import {ControlGroup, Validators, FormBuilder} from '@angular/common'; 
+0

si prega di inviare il vostro pacchetto.json –

risposta

8

penso che è solo come funziona, se si desidera solo per tenere traccia se le modifiche sono fatte dall'utente, si dovrebbe impiegare ControlGroup.dirty oppure formControl.dirty con l'osservabile changes.

ControlGroup.valueChanges.subscribe(() => { 

if(ControlGroup.dirty){ 
    console.log('This change is made by User.'); 
} 
else { 
    console.log('This change is Automated. before any User interaction.'); 
} 

})