Теоретически, вам нужно предоставить пользовательский ErrorStateMatcher
для MatInput
элемента управления.Угловой материал имеет пример здесь .В функции ErrorStateMatcher
isErrorState
вам необходимо получить доступ к родительской группе элемента управления и использовать его состояние для возврата состояния для элемента управления поля.
Однако я не уверен, что это будет работать так, как ожидалось.Поскольку состояние родительской группы зависит от состояния дочернего элемента управления, вы создаете циклическую зависимость.Таким образом, вместо этого вам может потребоваться проверить другие дочерние элементы управления на наличие ошибок, а не явно проверять родительское состояние.
С точки зрения проектирования, в общем, вам, вероятно, не следует этого делать, поскольку смысл показа ошибок заключается в том, чтопривлечь внимание пользователя к тому, какие поля нуждаются в коррекции.Если пометить поле, в котором нет ошибки, как в случае ошибки, если это другое поле с ошибкой, это может ввести пользователей в заблуждение.В случае контроля входа в систему только с полями имени пользователя и пароля, я вижу, что это может быть полезно для предотвращения взлома.