Угловой 6 Реактивные формы Validators.minLength - PullRequest
0 голосов
/ 12 июня 2018

Это может быть свежий взгляд или что-то ужасно неправильное с моей стороны.

Я пытаюсь создавать динамические формы с помощью json.Для этой цели я создал отдельный компонент Input, который работает как положено;однако, когда я пытаюсь добавить валидатор minLength, он бомбит с сообщением

Выражение изменилось после того, как оно было проверено.Предыдущее значение: 'ng-valid: true'.Текущее значение: 'ng-valid: false'.

ngOnInit() {
    const formControl = this.group.controls[this.config.name];

    // if (this.config.validation.required) {
    //  this.validators.push(Validators.required);
    //  formControl.setValidators([Validators.required]);
    // }

    if (this.config.validation.minLength) {
        this.validators.push(Validators.minLength(this.config.validation.minLength));
        formControl.setValidators([Validators.minLength(this.config.validation.minLength)]);
    }

    formControl.setValue(null);
    formControl.updateValueAndValidity();

    console.log(this.group.controls[this.config.name].validator(formControl));
    this.ready = true;


}

Комментированный код для требуемого валидатора работает нормально;однако, как только я добавлю minLength, он выдаст указанную ошибку.

Кроме того, независимо от того, добавляю ли я updateValueAndValiditiy () или нет, он все равно не работает.

Обратите внимание: настройки конфигурациичитается из JSON

1 Ответ

0 голосов
/ 15 июня 2018

После некоторых настроек копания и точек останова, проблема была найдена где-то еще, и, конечно, мой анализ был неверным, когда я отправил этот вопрос.

В моем JSON был узел для проверки,который я полностью пропустил за компонент «выпадающий», и ошибка пузырилась, чтобы быть тем, о чем говорит вопрос;однако при дальнейшем копании это происходило во время установки проверок.

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