Мне нужно вернуть форму в исходное состояние после отправки формы. Я использую поля формы материала в своей FormGroup для создания полей ввода. Итак, когда я вызываю метод сброса из группы форм, форма не возвращается в исходное состояние, вместо этого она проверяет, переведены ли все поля в недопустимое состояние.
Мой шаблон формы
<form [formGroup] = "createUserForm" (ngSubmit) = "createUser()" novalidate class = "add_user_form normal_form">
<div class = "form_input_field">
<i class = "fas fa-user"></i>
<mat-form-field>
<input formControlName = "uname" matInput placeholder = "UserName*">
<mat-error *ngIf = "createUserForm.controls['uname'].hasError('required') && formSubmitted">
Please enter your username
</mat-error>
</mat-form-field>
</div>
<div class = "form_button_field">
<button mat-raised-button class = "form_btn_submit" color = "primary">Submit</button>
<button mat-raised-button type = "reset" class = "form_btn_cancel" color = "warn">Cancel</button>
</div>
</form>
Моя функция отправки
createUser() {
if (this.createUserForm.valid) {
this.createUserForm.reset();
}
}
Как вернуть форму в исходное состояние после сброса?
Это проблема Angular Material. В настоящее время для него есть открытая проблема с GitHub: github.com/angular/material2/issues/13240
Я знаю, что это запоздалый комментарий, но получилось ли у вас это сработать? Можете ли вы добавить машинописный текст, который вы используете для создания экземпляра формы?