Контроль формы: Нетронутый атрибут не обновляется? - PullRequest
0 голосов
/ 02 октября 2019

Я пытаюсь создать простую проверку формы вокруг 2 полей ввода и кнопки. Когда эти поля ввода пустые (нетронутые), я хочу, чтобы кнопка была отключена. Когда любое из полей имеет значение, я хочу, чтобы кнопка была в состоянии отправить. В настоящее время, когда поля ввода визуализируются впервые, первичный атрибут имеет значение true. Когда изменение было внесено в поля, оно установлено в false, но когда изменения удалены, я хочу, чтобы оно вернулось в false, однако Angular, похоже, не сбрасывает эту проверку?

1 Ответ

4 голосов
/ 02 октября 2019

Нетронутый не означает «пустой», он означает «пользователь не изменил значение, так как оно отображалось в этой форме». Вместо этого используйте атрибут поля value, например

<button [disabled]="!myField1.value?.length && !myField2.value?.length">

https://angular.io/guide/forms

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

Требуется одно из двух полей, используя Angular 2

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