Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angular6 角度6格式阵列丢弃空字段_Angular6_Angular Formbuilder - Fatal编程技术网

Angular6 角度6格式阵列丢弃空字段

Angular6 角度6格式阵列丢弃空字段,angular6,angular-formbuilder,Angular6,Angular Formbuilder,我使用的是Angular 6。我有一个FormArray数组,如下所示 contactAddForm: FormGroup; phone_numbers: FormArray; ngOnInit() { this.contactAddForm = this.formBuilder.group({ first_name: new FormControl('', [ Validators.required ]) phone_numbers: this.fo

我使用的是
Angular 6
。我有一个
FormArray
数组,如下所示

contactAddForm: FormGroup;
phone_numbers: FormArray;

ngOnInit() {

  this.contactAddForm = this.formBuilder.group({
    first_name: new FormControl('', [
      Validators.required
    ])
    phone_numbers: this.formBuilder.array([this.createPhoneNumberFormField()])
  });
}

createPhoneNumberFormField(): FormGroup {
  return this.formBuilder.group({
    phone: new FormControl(),
    primary: new FormControl()
  });
}
这里的
电话
文本字段,
复选框,它发送

但有时会动态添加更多字段,如果提交为空,则分配给
phone
primary
字段的值为null

  • 如何从提交中放弃带有null
    phone
    字段的formArray字段
  • 如何将
    primary
    默认设置为false而不是null

  • 您可以将默认值设置为
    FormControl
    对象,方法是将其作为构造函数的第一个参数提供

    createPhoneNumberFormField(): FormGroup {
      return this.formBuilder.group({
        phone: new FormControl(),
        primary: new FormControl(false) // asigning default as false
      });
    }
    
    如果要在提交前删除
    null
    字段,则必须循环通过
    表单控件
    并手动删除它们