Угловой пользовательский валидатор не возвращает код ошибки - PullRequest
0 голосов
/ 27 января 2019

Привет, ребята. Я создал собственный валидатор для своей формы и он работает нормально - обнаруживает ошибку, как и ожидалось, но когда она все же обнаруживает, ошибки в объекте FormGroup пустые, но для правильного значения установлено значение false

export function ValidateBody(control: AbstractControl): ValidationErrors {
  if (control.value.length < 3) return { tooShort: true };
  if (control.value.length > 50) return { tooLong: true };
  if (/[^a-zA-Z0-9 \-\/]/.test(control.value)) return { invalidChar: true };
  return null;
}
export class FormQuestionComponent {
  @Input() question: FormData<any>;
  @Input() form: FormGroup;
  get isValid() {
    if (!this.form.controls[this.question.key].valid)
      console.log(this.form.errors);
    return this.form.controls[this.question.key].valid;
  }
}

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

...