2016-02-17 5 views
0

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

Как переопределить форму, чтобы отключить ее проверку или установить ее как действительную, независимо от содержимого полей?

+0

Вы можете попытаться сделать это: '$ valid = true' на форме – Michelangelo

+0

Это не работает. Пробовал настройку '$ valid = true' и' $ invalid = false' и массив других вещей. –

ответ

0

AFAIK нет простого выключателя, чтобы отключить проверку на основе AngularJS. Фактически большая часть проверки выполняется в NgModelController и директивах ввода - в основном код в файле input.js. Таким образом, чтобы избавиться от встроенной проверки, вам придется переработать код из этого файла (плюс некоторые другие, например, выбрать).

Вы определили код проверки как узкое место в вашей заявке?

+0

Это не узкое место в производительности с точки зрения производительности самого приложения формы. Это узкое место в развитии с точки зрения того, что я не могу вносить изменения и отправлять тестовые формы без заполнения формы, а это означает, что для проверки одного изменения кода требуется 5 минут, потому что мне сначала нужно пройти и вручную заполнить форму с фиктивными данными. Я мог бы создать глобальную функцию, которая автоматически заполняет все поля с действительными фиктивными данными, но я думал, что это займет больше времени, чем просто переопределение. Но, по-видимому, похоже, что это невозможно. –

0

1) Вы можете добавить атрибут novalidate в свой тег формы. http://www.w3schools.com/tags/att_form_novalidate.asp

или

2) Я использую довольно полезное расширение для Chrome под названием Form Filler которым делает именно то, что вы просите, то есть: Заполняет все входы формы на странице с фиктивными данными.

Смежные вопросы