使用 formio 时如何在 Angular *module* 中捕获 onSubmit

How can you trap onSubmit in Angular *module* when using formio

我真的为此花了好几个小时,但无济于事。是时候召集骑兵了。

在 Angular 中有许多示例如何在 formio 表单配置为组件时捕获 onSubmit。但是我找不到任何为配置为模块的 formio 表单捕获 onSubmit 的示例。

为什么重要?在 formio 表单上提交新的或编辑的记录后,URL 默认为该记录的视图 .../<form>/<recid>/view。我想重定向到另一个 URL。当表单定义为 Angular 组件时,这很容易:

export class AssessmentFormComponent implements OnInit {

  constructor() { }

  ngOnInit() {
  }

  onSubmit(submission: any) {
    window.location.href = 'about:blank';
    alert('Thank you for completing the assessment');
  }
}

我在一个模块中尝试了类似的代码,但永远不会触发 onSubmit 中的代码。显然有办法做到这一点;我只是找不到它。请指教

您可以像这样为 formio 添加 HTML

<formio #Form [form]="form" [submission]="formSubmission"
    (change) = "onChange($event)" [options]="formIoOptions"
    (submit) = "onSubmit($event)" (render)="onFormLoad(Form)">
</formio>

在 .ts 中编写你的 onSubmit 方法。