繁体   English   中英

角度材料自定义控件,在提交表单时也会显示错误

[英]angular material custom control that displays errors also when the form is submitted

我创建的自定义材料输入有问题。 它是一个国家自动完成输入,它实现了 MatFormFieldControl 和 ControlValueAccessor。 它应该反映到外部表单的值是国家的 ID。

问题是当我把它放在 a 中时,如果有错误,当用户提交表单时它们不会显示。

https://stackblitz.com/edit/angular-fxu8rz?file=src/app/form-field-custom-control-example.html

有人遇到过这种场景吗?

这就是我解决它的方式(可能有点hacky,我愿意寻求更好的解决方案):

我将 formGroupDirective 注入到组件中,现在我正在检查表单是否也已提交。 这使红色边框出现,但由于某种原因仍然没有错误消息。 我做的第二件事(这就是我不喜欢这个解决方案的原因)是在 errorState 函数旁边添加一个 updateValueAndValidity() 。

这是更新的堆栈闪电战:

https://stackblitz.com/edit/angular-fxu8rz-vcqtsd?fbclid=IwAR0yJtsxcHZal7_ZHPERQr8Prcxz5QqoEh78qEEIXRXtwPyNFec3qiKrZxk&file=src%2Fapp%2Fcountry-inputst%2Fcountry-inputs%2F

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM