如何解释 Angular FormBuilder.group 方法签名

问题描述 投票:0回答:1

问题很简单,但我还是不知道确切的意思。在 Angular 5.2 FormBuilder 组方法中,它显示

(方法) FormBuilder.group(controlsConfig: { [键:字符串]:任意; }, 额外的?: { [键:字符串]:任意; } | null): 表单组

如何解读这个签名? 它接收一个名为controlsConfig 的对象,其中键为字符串数据类型,值为任何数据类型? 以及一个名为“extra”的可选对象参数(键是字符串数据类型,值是任何数据类型)或额外参数值 = null?

angular
1个回答
0
投票

您应该使用支持 LTS 的 Angular 版本,因此请尝试迁移到更高版本的 Angular,例如 v15 或更早版本。因为它包含重要的安全性和功能更新。


如v5源代码所示form_builder.ts

表单生成器文档 - v5

第一个参数只是您提供给表单生成器的控件。

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()], 
});
© www.soinside.com 2019 - 2024. All rights reserved.