问题很简单,但我还是不知道确切的意思。在 Angular 5.2 FormBuilder 组方法中,它显示
(方法) FormBuilder.group(controlsConfig: { [键:字符串]:任意; }, 额外的?: { [键:字符串]:任意; } | null): 表单组
如何解读这个签名? 它接收一个名为controlsConfig 的对象,其中键为字符串数据类型,值为任何数据类型? 以及一个名为“extra”的可选对象参数(键是字符串数据类型,值是任何数据类型)或额外参数值 = null?
您应该使用支持 LTS 的 Angular 版本,因此请尝试迁移到更高版本的 Angular,例如 v15 或更早版本。因为它包含重要的安全性和功能更新。
如v5源代码所示form_builder.ts
第一个参数只是您提供给表单生成器的控件。
this.form = fb.group({
name: fb.group({
first: ['Nancy', Validators.minLength(2)],
last: 'Drew',
}),
email: '',
});
每个
key
是表单控件名称,其值包含表单控件 (new FormControl('Nancy', Validators.minLength(2))
) 或声明表单控件的简写方法 ['Nancy', Validators.minLength(2)]
。
第二个参数在文档中提到为:
参数映射的有效键是extra
和validator
。asyncValidator
所以一定是这样的。
this.form = fb.group({
name: fb.group({
first: ['Nancy', Validators.minLength(2)],
last: 'Drew',
}),
email: '',
}, {
validators: [this.someCustomValidator()],
asyncValidator: [this.someCustomAsyncValidator()],
});