I have component that wraps input field. In the component i receive the Control
object from @Input() inputControl: Control;
. In the template i have
You can try to use this expression:
The errors
attribute contains one entry per name of validator that failed.
I use the Elvis operators for the errors
attribute since it can be undefined if there is no validation error.
Edit
Following your comment, I think that you can check a "required" validator using the === operator with the Validators.required
function directly. In fact a validator is simply a function and the Validators.required
function is used for "required" validation.
Here is the corresponding code:
this.hasRequiredValidator = (this.inputControl.validator === Validators.required);
In the case where the validator
attribute is an array, you need to extend a bit the test to check if the Validators.required
function is present in the array.
Now the code in the template would be:
(optional)
Hope it helps you, Thierry