AngularJS - разница между нетронутой/грязной и нетронутой/нетронутой - программирование
Подтвердить что ты не робот

AngularJS - разница между нетронутой/грязной и нетронутой/нетронутой

AngularJS Developer Guide - Формы сообщают, что существует множество стилей и директив, касающихся форм и полей. Для каждого класса CSS:

ng-valid
ng-invalid
ng-pristine
ng-dirty
ng-touched
ng-untouched

Какая разница между pristine/dirty, и touched/untouched?

4b9b3361

Ответ 1

AngularJS Developer Guide - CSS-классы, используемые AngularJS

  • @property {boolean} $ нетронутый Истина, если элемент управления еще не потерял фокус.
  • @property {boolean} $ коснулся True, если элемент управления потерял фокус.
  • @property {boolean} $ pristine Истинно, если пользователь еще не взаимодействовал с элементом управления.
  • @property {boolean} $ dirty Истинно, если пользователь уже взаимодействовал с элементом управления.

Ответ 2

$pristine/$dirty указывает, действительно ли пользователь что-то изменил, а $touched/$untouched сообщает вам, был ли пользователь просто там/посещен.

Это действительно полезно для проверки. Причиной $dirty всегда было избегать показов ответов проверки, пока пользователь не посетил определенный элемент управления. Но, используя только свойство $dirty, пользователь не будет получать обратную связь с проверкой, если они фактически не изменили значение. Таким образом, поле $invalid все равно не будет показывать пользователю приглашение, если пользователь не изменил/не изменил значение. Если пользователь полностью проигнорировал требуемое поле, все выглядело нормально.

С помощью Angular 1.3 и ng-touched вы можете теперь установить определенный стиль в элементе управления, как только пользователь размыт, независимо от того, изменили ли оно значение или нет.

Здесь CodePen, который показывает разницу в поведении.

Ответ 3

В Pro Angular-6 книга подробно описана ниже;

  • valid: это свойство возвращает true, если содержимое элементов допустимо, и false в противном случае.
  • invalid: это свойство возвращает true, если содержимое элементов недопустимо, и false в противном случае.

  • pristine: это свойство возвращает true, если содержимое элементов не было изменено.

  • dirty: Это свойство возвращает true, если содержимое элементов было изменено.
  • нетронутый: это свойство возвращает true, если пользователь не посетил элемент.
  • touch: это свойство возвращает true, если пользователь посетил элемент.

Ответ 4

Стоит отметить, что свойства проверки различны для форм и элементов формы (обратите внимание, что касание и нетронутость только для полей):

Input fields have the following states:

$untouched The field has not been touched yet
$touched The field has been touched
$pristine The field has not been modified yet
$dirty The field has been modified
$invalid The field content is not valid
$valid The field content is valid

They are all properties of the input field, and are either true or false.

Forms have the following states:

$pristine No fields have been modified yet
$dirty One or more have been modified
$invalid The form content is not valid
$valid The form content is valid
$submitted The form is submitted

They are all properties of the form, and are either true or false.