Angular dumb(presentation)组件上的被动表单提交两次
我有一个smart and dumb组件,我的表单在事件发射器上提交了两次。这件事我已经谈了好几天了,还没弄明白 我试图把我所有的逻辑都保存在智能组件中。此外,欢迎对这种模式的最佳实践提出批评 这是我的stackblitz,如果您有任何想法,请申请并发布: 我认为(submit)事件已经在Angular中定义,它会触发两次。Angular dumb(presentation)组件上的被动表单提交两次,angular,eventemitter,angular-reactive-forms,Angular,Eventemitter,Angular Reactive Forms,我有一个smart and dumb组件,我的表单在事件发射器上提交了两次。这件事我已经谈了好几天了,还没弄明白 我试图把我所有的逻辑都保存在智能组件中。此外,欢迎对这种模式的最佳实践提出批评 这是我的stackblitz,如果您有任何想法,请申请并发布: 我认为(submit)事件已经在Angular中定义,它会触发两次。 由于事件名称“submit”,表单被提交两次,这是Angular中的默认事件名称,无论您定义的事件处理程序是什么,表单都会在(ngSubmit)上被调用 要删除重复提交,请
由于事件名称“submit”,表单被提交两次,这是Angular中的默认事件名称,无论您定义的事件处理程序是什么,表单都会在(ngSubmit)上被调用 要删除重复提交,请将事件名称更改为“submit2”,例如,它将只提交一次: app dumb.html:
<form [formGroup]="myForm" (ngSubmit)="submit2.emit(myForm)">
name:
<input type="text" formControlName="name">
<button>
submit
</button>
</form>
@Output() submit2: EventEmitter<FormGroup> = new EventEmitter<FormGroup>();
姓名:
提交
应用程序dumb.ts:
<form [formGroup]="myForm" (ngSubmit)="submit2.emit(myForm)">
name:
<input type="text" formControlName="name">
<button>
submit
</button>
</form>
@Output() submit2: EventEmitter<FormGroup> = new EventEmitter<FormGroup>();
@Output()submit2:EventEmitter=neweventemitter();
演示:
啊,谢谢你。我知道这一定是很普通的东西,只是在网上找不到而已。伙计。这么简单,我没有意识到这是一个关键字函数。谢谢@rotemx!