1
角度を使用して以下のような簡単な入力フォームを作成しています。初期状態と同じとき角張った形が汚い
ユーザーがコントロールの値を変更して元の状態に戻した場合、私が何を呼び出すか、「真」の汚れているかどうかを知っている人がいるかどうかは疑問だ。
私の "name"プロパティ= "John"の読み込み時。
次に、ユーザーが名前プロパティ「Jon」を作成するために文字を削除しました 私のcontactFormが汚れました。
ユーザーがカーソルを戻して「h」をもう一度入力すると、name = "John"私のcontactFormは元の状態でもまだ汚れていますか?
import { FormControl } from '@angular/forms';
import { FormBuilder, AbstractControl, FormGroup, ReactiveFormsModule, Validators } from '@angular/forms';
import { ContactDetail } from './../../../models/contact-details.model';
import { Component, OnInit, Input } from '@angular/core';
@Component({
selector: 'contact-edit-edit-body',
templateUrl: './contact-edit-edit-body.component.html',
styleUrls: ['./contact-edit-edit-body.component.css']
})
export class ContactEditEditBodyComponent implements OnInit {
@Input() contact: ContactDetail = new ContactDetail(0);
contactForm: FormGroup;
name: AbstractControl;
phoneNumber: AbstractControl;
emailAddress: AbstractControl;
constructor(fb: FormBuilder) {
this.contactForm = fb.group({
"name": [this.contact.name],
"phoneNumber": [this.contact.phoneNumber],
"emailAddress": [this.contact.emailAddress]
});
this.name = this.contactForm.controls['name'];
this.phoneNumber = this.contactForm.controls['phoneNumber'];
this.emailAddress = this.contactForm.controls['emailAddress'];
}
ngOnInit() {
}
}
汚いプロパティは、ユーザーがフォームと相互作用したことを示し、データの違いではありません。プログラムでデータを変更すると、フォームは依然として元の状態になります。あなたの '本当の'状態を追跡するには、フォームのvalueChangesを聞き、データがまだ同じかどうかを確認してください。 – Alexander
フォームをタブすると、汚れ= falseになりますか?タブ移動は相互作用ではありませんか? – CheGuevarasBeret
私はそこに触れた状態で汚い/元気な – Alexander