gpt4 book ai didi

angular - 用于确定 FormArray 的控件属性是 [FormControl] 还是 [FormGroup] 的选择器?

转载 作者:行者123 更新时间:2023-12-02 01:59:25 25 4
gpt4 key购买 nike

我继承了一个正在调试的 Angular 代码文件。当我记录我需要评估的 FormArray 时,它会作为两种类型的 FormArray 控件之一注销:[FormControl] 或 [FormGroup]。

这是我正在记录的函数的一部分:

  someFunction(data: any, useForm: any = false): any {
const form = useForm || <FormGroup>this.formGroup;

forEach(data, (value, key) => {
// Check nested FormArray items that include FormControls (Would likely be from mat-table).
const formArray = (<FormGroup>form).get(String(key));
console.log('formArray > ', formArray);

if (isArray(value) && formArray.hasOwnProperty('controls') && [HELP])

在一个用例中,当加载包含表单控件的 mat-table 时,我在日志中得到以下信息:

enter image description here

在另一个用例中,例如具有多个选项的复选框控件,我得到这个:

enter image description here

我需要弄清楚如何过滤最后一行代码,即 IF 语句的 [HELP] 条件,以便它只匹配 FormArray 的控件属性包含 [FormGroup] 而不是 [FormControl] 的条件

最佳答案

instanceof运算符测试类型:

if (... && (<FormArray>formArray).controls[0] instanceof FormGroup) { ... }

关于angular - 用于确定 FormArray 的控件属性是 [FormControl] 还是 [FormGroup] 的选择器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69170274/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com