我有多个表单,用户必须通过自动完成来指定他们的国家。
我实现了一个执行自动完成的服务(联系后端,处理响应和返回建议)
现在我想创建一个组件以在所有表单中重用。
该组件将取决于:
- 我提到的服务
- 一个
matInput field
- 一个
mat-auto-complete
。
该组件将实现ControlValueAccessor
和MatFormFieldControl
父组件会像这样使用它
<mat-form-field>
<auto-completed-country formControlName="country"></auto-completed-country>
</mat-form-field>
父组件创建FormControl
命名country
并指定其验证器(在某些形式中,国家是必需的,而在其他形式中则不是)。
问题
通常matInput
绑定到FormControl
, 并通过[matAutocomplete]
指令自动完成。
但是,在我的情况下,情况并非如此,matInput
因为FormControl
它matInput
不受FormControl
.
但是我担心该[matAutocomplete]
指令,我认为该指令是阅读它与之交互的源matInput
及其相关联的FormControl
.
我应该如何处理这个?
我是否让事情变得比必要的更复杂?