Ich möchte vergleichen, ob die beiden Werte von Formen identisch sind. Ich habe diesAngular 2: Vergleichen Sie 2 Formen
if(this.holdForm.value != this.positionForm.value){
this.enableButton = true;
}else{
this.enableButton = false;
}
aber es funktioniert nicht. Dadurch wird enableButton nicht wahr.
AKTUALISIERT:
this.positionForm = this.fb.group({
'name' : [position.name, Validators.required],
'remark': position.remark
});
this.holdForm = this.fb.group({
'name' : position.name,
'remark': position.remark
});
this.positionForm.valueChanges.subscribe(data => {
this.onValueChanged(data);
if(this.data.process == 'register'){
this.enableButton = true;
}else if(this.data.process == 'update' && this.holdForm.value != this.positionForm.value){
this.enableButton = true;
}else{
this.enableButton = false;
}
});
Was ist der Fehler, den Sie bekommen? können Sie die beiden Formen –
posten Ich habe keinen Fehler. Der andere ist eine temporäre Form für vorherige Werte. Ich möchte vergleichen, ob es Änderungen gibt. Siehe aktualisiert @RahulSingh – Char
Sie können Bibliothek wie lodash und seine gleiche Methode verwenden, um zwei Objekte zu vergleichen ! _. IsEqual (this.holdForm.value, this.positionForm.value) –