在使用ngFor指令创建表单控件时,如果需要为控件设置初始值,可以在组件中定义表单控件对应的FormControl对象,并在ngFor循环中将这个FormControl对象传递给每个表单控件的[formControl]属性。示例代码如下:
组件中定义FormControl对象:
import { Component } from '@angular/core';
import { FormControl } from '@angular/forms';
@Component({
selector: 'app-form',
template: `
`
})
export class FormComponent {
myForm = new FormGroup({});
controls = [
new FormControl('Control 1'),
new FormControl('Control 2')
];
// 初始化表单控件的值
constructor() {
this.controls.forEach(control => this.myForm.addControl(control));
}
}
在模板中使用ngFor指令创建表单控件,并将FormControl对象传递给每个表单控件的[formControl]属性。同时,通过[value]属性将FormControl对象的初始值赋值给表单控件。