Angular 2 資料驅動表單
this.myForm = this.formBuilder.group
使用使用者的配置建立一個表單物件,並將其分配給 this.myForm 變數。
'loginCredentials': this.formBuilder.group
method 建立一組控制元件,由一個 formControlName 組成,例如。login
和 value ['', Validators.required],
,其中第一個引數是表單輸入的初始值,secons 是驗證器或驗證器陣列,如'email': ['', [Validators.required, customValidator]],
中所示。
'hobbies': this.formBuilder.array
建立一個組陣列,其中組的索引是陣列中的 formGroupName ,並且訪問方式如下:
<div *ngFor="let hobby of myForm.find('hobbies').controls; let i = index">
<div formGroupName="{{i}}">...</div>
</div>
onAddHobby() {
(<FormArray>this.myForm.find('hobbies')).push(new FormGroup({
'hobby': new FormControl('', Validators.required)
}))
}
此示例方法將新 formGroup 新增到陣列中。當前訪問需要指定我們想要訪問的控制元件型別,在此示例中,此型別為:<FormArray>
removeHobby(index: number){
(<FormArray>this.myForm.find('hobbies')).removeAt(index);
}
與上述相同的規則適用於從陣列中刪除特定的表單控制元件