要设置FormArray的初始值用于单元测试,可以按照以下步骤进行操作:
import { FormBuilder, FormGroup, FormArray } from '@angular/forms';
// 创建一个FormGroup
const formGroup: FormGroup = this.formBuilder.group({
// 创建一个空的FormArray
formArray: this.formBuilder.array([])
});
['value1', 'value2', 'value3']
:// 创建初始值数组
const initialValues: string[] = ['value1', 'value2', 'value3'];
// 使用初始值数组创建FormArray
const formArray: FormArray = this.formBuilder.array(initialValues);
// 将formArray控件的值设置为FormArray
formGroup.controls.formArray.setValue(formArray);
完整的示例代码如下:
import { FormBuilder, FormGroup, FormArray } from '@angular/forms';
@Component({
selector: 'app-example',
template: `
`
})
export class ExampleComponent implements OnInit {
formGroup: FormGroup;
constructor(private formBuilder: FormBuilder) {}
ngOnInit(): void {
// 创建一个FormGroup
this.formGroup = this.formBuilder.group({
// 创建一个空的FormArray
formArray: this.formBuilder.array([])
});
// 创建初始值数组
const initialValues: string[] = ['value1', 'value2', 'value3'];
// 使用初始值数组创建FormArray
const formArray: FormArray = this.formBuilder.array(initialValues);
// 将formArray控件的值设置为FormArray
this.formGroup.controls.formArray.setValue(formArray);
}
}
这样,你就可以在单元测试中使用这个设置了初始值的FormArray进行测试了。
下一篇:Angular:设置观察响应