setPath() 在 FormArray 中添加 FormGroup 不起作用
setPath() to add FormGroup in FormArray not work
我使用树对象和 FormGroup 构建了一个 orgChart。
如您所见,我将每个节点关联起来。
var treen = [{
name:"name",
cargo:"cargo",
subordinados:[{
name:"name 2",
cargo:"cargo 2",
subordinados: []
}]
}];
每个 "subordinados" 都是一个 FormArray。
当我使用 formGroup.setPath() 在 "subordinados" 中添加新索引作为 FormGroup 类型时,似乎它不起作用。并且 formGroup 仍然相同。
按照我的方法去做:
clicou( f: FormControl)
{
const arrColaborador = new FormArray([]);
const sub = this.builder.group({
nome: new FormControl('teste'),
cargo: new FormControl('teste'),
subordinados: arrColaborador
});
f.patchValue({
subordinados: [sub]
})
console.log(f);
}
我怎样才能做到这一点并通过该方法更改 formArray 字符串?
我在 https://alligator.io/angular/reactive-forms-formarray-dynamic-fields/
之后找到了答案
如您所见,我使用 var subordinados = f.get('subordinados') as FormArray;
获取 formArray,因此,我使用 subordinados.push()
添加新索引。
这种方式适合我。
我使用树对象和 FormGroup 构建了一个 orgChart。 如您所见,我将每个节点关联起来。
var treen = [{
name:"name",
cargo:"cargo",
subordinados:[{
name:"name 2",
cargo:"cargo 2",
subordinados: []
}]
}];
每个 "subordinados" 都是一个 FormArray。
当我使用 formGroup.setPath() 在 "subordinados" 中添加新索引作为 FormGroup 类型时,似乎它不起作用。并且 formGroup 仍然相同。
按照我的方法去做:
clicou( f: FormControl)
{
const arrColaborador = new FormArray([]);
const sub = this.builder.group({
nome: new FormControl('teste'),
cargo: new FormControl('teste'),
subordinados: arrColaborador
});
f.patchValue({
subordinados: [sub]
})
console.log(f);
}
我怎样才能做到这一点并通过该方法更改 formArray 字符串?
我在 https://alligator.io/angular/reactive-forms-formarray-dynamic-fields/
之后找到了答案如您所见,我使用 var subordinados = f.get('subordinados') as FormArray;
获取 formArray,因此,我使用 subordinados.push()
添加新索引。
这种方式适合我。