首页 > 解决方案 > 当从执行路由更改的表单中触发取消按钮时,组件更改会暂时暂停?

问题描述

我想让用户有机会在表单上点击取消。该组件仅显示表单。我想将取消按钮放在表单内,使其位于提交按钮旁边,但是当用户触发取消按钮时,我想更改路由并显示 about 组件。

每当我尝试其中任何一个时:

`
onCancel(){    
    return this.location.back();
  }
`

`
onCancel(){    
    return this.router.navigate(['/about']);
  }
`

`
<mat-card-actions>
      <button mat-raised-button [disabled]="!contactForm.valid" color="primary" type="submit">Submit</button>
      <button mat-raised-button color="warn" routerLink="/about">Cancel</button>
    </mat-card-actions>
`

路由的转换暂时暂停,页面上的 URL 更改为正确的路径,但是它附加了一个 ? 之后呢?路径,然后在大约 2 秒后更改路径。

如何在表单中包含取消按钮?

这是正在发生的事情从表单中选择取消并更改路线时应用程序所处的状态

标签: angular

解决方案


只是想回答这个问题,因为Daniel W Strimpel想通了。问题是我没有在取消按钮上明确设置类型。默认情况下,它设置为"type=submit",当我将其更改为时,"type=button"一切都按预期工作。


推荐阅读