проверить, является ли formgrup в Formarray действительным angular 6 реактивная форма - PullRequest
1 голос
/ 11 марта 2020

У меня есть функциональность, которая добавляет поле ввода по нажатию кнопки

addMilestoneRow() {
    if (this.milestoneFormArray.length === 0) {
      this.milestoneFormArray.push(this.initCreateMilestoneForm());
    } else {
      this.createGoalForm.controls['milestones']['controls'].forEach(value => {
        if (value.valid) {
          this.milestoneFormArray.push(this.initCreateMilestoneForm());
        }
      });
    }
  }

поле ввода является частью массива форм, который имеет свою собственную группу форм

initCreateMilestoneForm(data?: Milestones) {
    return this.fb.group({
      title: [
        data ? data.title : null,
        [Utils.emptySpaceValidator(), Validators.required]
      ],
      completed: [{ value: data ? data.completed_at : false, disabled: false }],
      id: [{ value: data ? data.id : null }],
      status: [{ value: data ? data.status : 'PENDING' }],
      goal_id: [{ value: data ? data.goal_id : null }]
    });
  }

Я хочу, чтобы всякий раз, когда я нажимал на кнопку, он должен проверять, является ли ранее добавленное поле ввода действительным или нет, для этого я использовал для каждого, но проблема в том, если у меня есть 3 поля, ранее добавленных тогда, и все заполнены тогда из-за каждого он добавляет 3 новых пустых поля, но я хочу, чтобы было добавлено только 1 поле

может кто-нибудь помочь

...