gpt4 book ai didi

events - Angular 5 ngSubmit @Output 触发两次

转载 作者:行者123 更新时间:2023-12-04 02:57:48 26 4
gpt4 key购买 nike

自定义组件

// ...

@Output() submit: EventEmitter < any > = new EventEmitter();

// ...

onFilterSubmit($event): void {
this.submit.emit($event);
this.formData = {
minDate: new Date().toISOString(),
maxDate: new Date().toISOString()
};
}
<form (ngSubmit)="onFilterSubmit(formData)">

<!-- -- -->
<button mat-button
mat-raised-button
[disabled]="reqsForm.form.invalid"
type="submit"
color="primary">
{{labels.submit}}
</button>
</form>

外部组件

// ...

onFilterSubmit($event): void {
console.info("FORM SUBMIT", $event);
}
<custom-component (submit)="onFilterSubmit($event)">

<!-- -- -->

</custom-component>

输出

FORM SUBMIT > 对象

FORM SUBMIT > 对象

最佳答案

发生这种情况的原因是一个名为“提交”的事件已经可以从自定义组件外部捕获。

我通过将自定义事件名称更改为 filterSubmit

来解决

另请注意,按钮上的 type submit - 在本用例中 - 实际上是无用的,因为默认情况下,表单中的 one 按钮将属于 submit 类型。

关于events - Angular 5 ngSubmit @Output 触发两次,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52111014/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com