Explicación de Inyección de dependencias, formularios y validaciones
7. Crear componente de formulario validado
7.1. (Opcional) CSS para ng-valid / ng-invalid
Editamos (si no está lo creamos) src/app/componentes/form-validado/form-validado.component.css,
Angular añade clases CSS como ng-invalid, ng-valid, ng-touched, etc
input.ng-invalid.ng-touched {
border: 1px solid red;
}
input.ng-valid.ng-touched {
border: 1px solid green;
}