Есть ли функция, которая будет представлять ошибки проверки, используя обычную угловую проверку формы в виде списка для пользовательского интерфейса - PullRequest
0 голосов
/ 23 апреля 2019

Представляет список ошибок проверки из вложенной родительской / дочерней формы.Как мне это сделать, используя угловые ts в приложении с реактивной формой

Мне удалось внедрить мою дочернюю форму с помощью учебника https://www.youtube.com/watch?v=BP6E4rW5EPA&list=PL6n9fhu94yhWNJaDgh0mfae_9xoQ4E_Zj&index=14, но у меня возникли некоторые проблемы, связанные с очисткой проверки дочерней формыкогда форма выключена.Скрипт ниже просматривает мою форму и возвращает список полей.Часть «if» моего оператора проходит через любые «дочерние» элементы управления и добавляет ее в список.Этот список затем сравнивается с предварительно определенным списком ключевых: значимых полей, которые находятся в списке полей, которые должны быть проверены.Это, в свою очередь, сопоставляет ключ и возвращает значение вместе с сообщением о проверке в пользовательский интерфейс.

  logValidationErrors(group: FormGroup = this.requestFormGroup): void {
    Object.keys(group.controls).forEach((key: string) => {
      const abstractControl = group.get(key);

      if (abstractControl instanceof FormGroup) {

        this.logValidationErrors(abstractControl);

      } else {
        this.formErrors[key] = '';

        if (abstractControl && !abstractControl.valid) {

          const messages = this.validationMessages[key];

          for (const errorKey in abstractControl.errors) {
            if (errorKey) {
              this.formErrors[key] += messages[errorKey];
            }
          }
        }
      }
    });

    const filteredErrors = Object.values(this.formErrors).filter(
      values => values.length > 0
    );

    this.hasError = filteredErrors;

  }

Когда я загружаю форму, она возвращает родительскую проверку в виде списка для пользовательского интерфейса.Когда я переключаю дочернюю форму для отображения, она добавляет свои поля проверки в список.Это правильное поведение.Проблема в том, что когда я отключаю его, список проверки не обновляется, чтобы исключить проверку дочерней формы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...