У меня есть ввод имени пользователя, и у меня есть пользовательское сообщение об ошибке «Имя пользователя уже занято» через ng-messages. Мне удалось вручную добавить и показать сообщение об ошибке, но проблема в том, что «класс ошибки» (или что-то, что превращает ввод углового материала в красный цвет при ошибке) является своего рода «отложенным» . Я устанавливаю ошибку, затем отображается сообщение об ошибке, но класс ошибок не применяется. Я изменил значение имени пользователя (это установит для ошибки значение false на основе моей пользовательской функции), после чего сообщение об ошибке исчезнет, но класс ошибок будет применен только в этот раз.
Чтобы показать вам, в чем моя проблема, вот plunkr
--ИЗМЕНИТЬ--
Кто-то дал мне идею, и мне просто нужно вручную установить класс ошибок на входе, но по-своему, как у углового материала. Просто поместите md-is-error в md-input-container, а также вручную установите допустимость ввода в контроллере.
<md-input-container md-is-error="sampleForm.userName.$invalid">
Вот обновленный plunkr