2

我有

<div class="style1" *ngIf="data" [@slideInLeft]="slideInLeft">
  <form [formGroup]="form1" class="form" *ngIf="form1">
....
     <button [disabled]="this.isUpdating === true" type="submit" class="btn btn-default" (click)="cancelClicked()">Cancel</button>
  </form>
</div>

import { slideInLeft } from 'ng-animate';

animations: [trigger('slideInLeft', [transition('* => *', useAnimation(slideInLeft))])]

当我显示表单时,动画效果很好。一旦我单击取消,页面就会重新加载。

如果我完全删除动画取消不会重新加载页面。

有谁知道为什么会这样?

4

1 回答 1

1

如果你有一个 stackblitz 或其他东西来重现这个问题,我想我可以测试我的理论。我猜这可能与您将取消按钮的类型属性设置为“提交”这一事实有关。这与表单的自然工作方式相矛盾,提交按钮应该提交表单,而不是取消。

在纯 html 中,提交按钮执行 action 属性定义的任何内容,请看这里https://www.w3schools.com/html/html_forms.asp

我要尝试的第一件事是使取消按钮的类型属性为“按钮”,<button type="button>看看是否有帮助。如果你想通过角度方式处理提交动作,你应该通过<form (ngSubmit)="takeSomeAction()">

于 2019-10-07T11:23:20.543 回答