反应形式:在Angular 4中动态添加和删除类型字符串数组

时间:2018-10-12 04:15:38

标签: javascript angular typescript angular-reactive-forms

如何将字段添加到可动态添加和删除类型字符串数组的反应形式中?我现在拥有的实现是一个FormArray,但是它作为对象添加到了数组中,而不是数组中的另一个字符串。 (请参见下面的代码)

ngOnInit() {
  this.form = this.formBuilder.group({
    user: '',
    directory: '',
    filename: this.formBuilder.array([ this.createItem() ])
  });
}

createItem(): FormGroup {
  return this.formBuilder.group({
    filename: ''
  });
}

1 个答案:

答案 0 :(得分:1)

代替创建formGroup,您可以尝试

constructor(private formBuilder:FormBuilder){
   this.form = this.formBuilder.group({
    user: '',
    directory: '',
    filename: new FormArray([new FormControl('hai')])
  });

 }

 addFormInput(){
    const form=new FormControl('');
   (<FormArray>this.form.controls['filename']).push(form);
  }

removeFormInput(i){
  (<FormArray>this.form.get('filename')).removeAt(i);
 }

示例:https://stackblitz.com/edit/angular-tvuksw