在Angular 6中,可以使用FormGroup
和FormArray
来创建嵌套表单组。
下面是一个示例代码,展示了如何创建一个包含嵌套表单组的表单。
首先,创建一个父组件的HTML模板文件,其中包含一个表单。在该表单中,我们可以使用formGroupName
指令来指定嵌套表单组的名称。
接下来,在父组件的TS文件中,创建表单并初始化嵌套表单组。
import { Component, OnInit } from '@angular/core';
import { FormBuilder, FormGroup } from '@angular/forms';
@Component({
selector: 'app-parent',
templateUrl: './parent.component.html',
styleUrls: ['./parent.component.css']
})
export class ParentComponent implements OnInit {
parentForm: FormGroup;
constructor(private fb: FormBuilder) { }
ngOnInit() {
this.parentForm = this.fb.group({
nestedForm: this.fb.group({
nestedField1: [''],
nestedField2: ['']
})
});
}
}
在上面的代码中,我们使用FormBuilder
来创建一个父表单和一个嵌套表单组。注意,嵌套表单组也是使用FormBuilder
创建的。
最后,在父组件的模块文件中,导入ReactiveFormsModule
并将其添加到imports
数组中,以便能够使用表单相关的指令和服务。
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { ReactiveFormsModule } from '@angular/forms';
import { ParentComponent } from './parent.component';
@NgModule({
declarations: [ParentComponent],
imports: [
CommonModule,
ReactiveFormsModule
],
exports: [ParentComponent]
})
export class ParentModule { }
通过这些步骤,我们就可以在Angular 6中创建一个带有嵌套表单组的表单。
上一篇:Angular6中的路由