Angular - Как определить новый элемент в FormArray? - PullRequest
0 голосов
/ 28 апреля 2020

У меня есть форма, которая позволяет добавлять несколько дочерних элементов.

В дочерней форме есть одно поле, содержащее конфиденциальную информацию, это поле ввода, если дочерний объект только что создан, но только для чтения, если дочерний. уже сохранен в БД.

Как мне добиться этого с ArrayForm?

1 Ответ

1 голос
/ 28 апреля 2020

вы можете хранить любые дополнительные данные в FormGroup следующим образом

  getChild(isNew: boolean): FormGroup {
    return this.formBuilder.group({
      name: [undefined, [Validators.required]],
      address: [undefined, [Validators.required]],
      isNew: [isNew]
    });
  }

в дочерней форме вы можете получить их из свойства

  @Input()
  public childForm: FormGroup;

  get isNew() {
    return this.childForm.get('isNew').value;
  }
...