【发布时间】:2020-08-17 09:02:10
【问题描述】:
我将 Angular 9 与 Angular Material 一起使用,并且通过实现 ControlValueAccessor 接口来自定义控件。一切正常。
当表单无效时,在我的所有提交按钮中,我调用 formGroup.markAllAsTouched 因为所有角度材料字段都变为红色。这样用户可以更好地了解哪些控件是无效的。
我需要用我的自定义控件实现相同的行为。该怎么做?
为了更好地了解情况,我创建了一个 stackblitz 项目here
【问题讨论】:
-
您的控件没有标记为已触摸?你在你的控件中实现了 registerOnTouched 吗?你能分享你的代码吗?
-
我正在准备一个 stackblitz 示例。我会尽快回复你
-
这里是例子 -> stackblitz.com/edit/angular-sh8esy
-
首先,我不知道你为什么在另一个 ControlValueAccesor 组件中包装一个 mat-select,你可以将 userTypeCustomControl 共享给自定义控件并在 mat-select 中使用它。你对类和表单控件引用有问题
标签: angular angular-material angular-forms