чем отличается метод patchValue от метода updateValueAndValidity ()? - PullRequest
0 голосов
/ 17 января 2019

В чем разница между patchValue и updateValueAndValidity. Нужно ли нам звонить updateValueAndvalidity всякий раз, когда мы используем patchValue или setValue?

1 Ответ

0 голосов
/ 29 июля 2019

Из угловой документации // https://angular.io/guide/reactive-forms

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

Исправление значения модели Есть два способа обновить значение модели:

Используйте метод setValue (), чтобы установить новое значение для отдельного элемента управления. Метод setValue () строго придерживается структуры группы форм и заменяет все значение для элемента управления.

Используйте метод patchValue () для замены любых свойств, определенных в объекте, которые изменились в модели формы. +++++++++++++++++++++++++++++++++++++++ По поводу обновления ValueAndValidity

https://angular.io/api/forms/AbstractControl#updateValueAndValidity

Пересчитывает значение и статус проверки элемента управления.

исходя из моего опыта, если вы динамически изменяете валидаторы вашей формы, вы можете обновитьValueAndValidity. но если вы просто измените объект модели, используйте только patchvalue

Я бы сказал, что updateValueAndValidity включает модальные изменения + изменения валидатора в элементах управления формы.

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