Чтобы сделать это для каждого входа, как предложено, вам понадобится ваш API для возврата ошибок с соответствующим именем FormControl
, например;
[
{ name: 'email', errorMessage: 'Email already exists' },
{ name: 'password', errorMessage: 'Password is not strong enough' }
]
После того, как вы вернули этоВы можете перебрать массив ошибок и применить к каждому элементу управления формы с помощью setErrors()
, например,
for (let error in errorResponse) {
this.signUp.get(error.name).setErrors({ error: error.errorMessage });
}
. В этот момент вам просто нужно показать сообщение об ошибке для каждого ввода.
<p *ngIf="signUp.get('email').error">{{signUp.get('email')?.errors?.error}}</p>
Пример Stackblitz: https://stackblitz.com/edit/angular-pqhdul