如果您已经定义了一个类型的FormGroup,但是您希望该FormGroup增加某些字段,则可以使用Object.assign方法来实现扩展。例如:
import { FormGroup, FormBuilder } from '@angular/forms';
interface MyFormType {
name: string,
age: number,
email: string
}
@Component({
...
})
export class MyFormComponent implements OnInit {
myForm: FormGroup;
constructor(private fb: FormBuilder) { }
ngOnInit() {
this.myForm = this.fb.group({
name: '',
age: undefined,
email: ''
} as MyFormType);
}
addNewFieldToMyForm() {
const extendedFormValue = Object.assign({}, this.myForm.value, { newField: '' });
this.myForm.setValue(extendedFormValue);
}
}
在上面的示例代码中,我们首先定义了一个MyFormType类型,使用该类型定义了一个FormGroup。然后我们使用Object.assign方法为该FormGroup增加了一个newField字段。最后通过调用FormGroup的setValue方法将新的扩展表单值应用到FormGroup中。
上一篇:Angular(12.0.5)Formbuilder正则表达式验证。
下一篇:Angular(2+)中“NoPipefoundwithname'...'”错误提示的含义及解决方法