【发布时间】:2021-02-16 21:39:30
【问题描述】:
我是 Angular/Typescript 的新手,目前在 Angular 10 中使用模板驱动的表单。我正在尝试在不提交且不单击按钮的情况下重置表单。我已经检查了类似的问题,但它们都依赖于提交表单来重置它。我不断收到错误:
ERROR TypeError: Cannot read property 'reset' of undefined
下面是我的 TS 文件代码:
@ViewChild('visitorForm', { static: true }) visitorForm: NgForm;
constructor(private myService: MyService)
{
this.myService.imagePosted.subscribe(
userDetails => {
this.userDetails = userDetails;
this.visitorForm.reset();
}
);
}
这是我的 component.html:
<form (ngSubmit)="onSubmit(visitorForm)" #visitorForm="ngForm">
<div class="row">
<div class="col-md-10 form-group">
<input
[ngModel]="visitor.firstName"
required
type="text"
id="firstName"
name="firstName"
placeholder="First Name"
class="form-control"
#firstName="ngModel">
</div>
</div>
</form>
我可以在提交时清除表单,或者如果我使用绑定了事件的按钮,但这不是我想要的。我希望能够在上面的订阅中重置表单。有人知道怎么做吗?
【问题讨论】:
标签: angular typescript forms angular10