如何重置清晰表的错误状态?

时间:2018-09-22 18:34:17

标签: angular vmware-clarity clarity

如何重置新的Clarity 0.13表单的错误状态?我正在使用反应式表单,我想完全重置该表单。虽然我可以轻松重置FormGroup,但我不知道该如何摆脱例如失去所需的空输入焦点时触发的错误状态。我一直在Clarity代码中寻找未记录的功能,但在此找不到任何有用的功能。

这是一个重击问题,您可以在其中重现该问题:https://stackblitz.com/edit/clarity-light-theme-v013-6s2qtq

  1. 单击输入
  2. 在输入内容之外单击
  3. 点击“重置表单”按钮
  4. 输入仍被标记为无效。好吧,实际上是。但是我需要原始状态才能重用表单。

1 个答案:

答案 0 :(得分:2)

不幸的是,我们在Clarity中对此尚无支持。您现在可以解决此问题的方法(虽然不够优雅)是在表单上放置ngIf并基本上同时重置表单和DOM。之所以有效,是因为它完全破坏了DOM和形成状态,让您从头开始。

这是一种解决方法,如果您要遵循此功能,我们打开了一个跟踪此功能的问题。 https://github.com/vmware/clarity/issues/2678

演示:https://stackblitz.com/edit/clarity-light-theme-v013-form-reset-workaround?file=src/app/app.component.ts