2017-01-12 10 views
1

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

Теперь у меня также есть поле для ввода информации о кредитной карте и для адреса фактуры с полями, которые требуются и проверяются. Дело в том, что они отображаются только тогда, когда пользователь выбирает переключатель подписки. У меня есть все обязательные поля в ValidationRules, как я могу сказать aurelia, что он должен проверять только те, которые в настоящее время видны?

ответ

4

Вы можете использовать условную проверку с использованием свободно распространяемого метода when. Вот пример из Aurelia Docs.

ValidationRules .ensure('email') .email() .required() .when(order => order.shipmentNotifications) .withMessage('Email is required when shipment notifications have been requested.');

2

Если вы используете if.bind на свой элемент, скрытый элемент будет не получить подтверждено.

Если вы не хотите, чтобы элемент в вашей DOM был скрыт, используйте if.bind. Таким образом, ваш элемент не отображается в dom, поэтому не проверяется.

show.bind -> Скрыть/показать элемент

if.bind -> Render/не делают элемент