我构建了一个效果很好的验证组件。但是,我想通过在成功提交表单时添加成功消息来扩展它。
在我传入表单的组件中,观察变化,并对错误采取行动:
this.formGroup.valueChanges.pipe(takeUntil(this.ngUnsubscribe)).subscribe(data => {
if (this.formGroup.invalid) {
this.validation = { message: `Check for errors in the form`, valid: false };
} else {
this.validation = { message: '', valid: true };
}
});
但是我看不到将提交事件放入我的组件以便我可以在 ui 中显示成功的直接方法。
- 我可以使用 (ngSubmit) 吗? event不知何故?
- 你会怎么做才能得到它?
更新:
在投入大量时间后,我的 feature request is here
(2022) 我们终于有了
ng-submitted
类 (v12.1)
最佳答案
我不知道直接来自 FormGroup 类的任何提交事件,我所知道的是您应该从表单模板中收听它。
<form [formGroup]="formGroup" (ngSubmit)="submit()">
<!-- Your controls here-->
<button>Submit</button>
</form>
在您的组件代码中,您应该监听创建 submit() 方法的提交事件
关于javascript - Angular 响应式表单提交事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54678936/