0

我有多个表单,用户必须通过自动完成来指定他们的国家。

我实现了一个执行自动完成的服务(联系后端,处理响应和返回建议)

现在我想创建一个组件以在所有表​​单中重用。

该组件将取决于:

  • 我提到的服务
  • 一个matInput field
  • 一个mat-auto-complete

该组件将实现ControlValueAccessorMatFormFieldControl

父组件会像这样使用它

<mat-form-field>
  <auto-completed-country formControlName="country"></auto-completed-country>
</mat-form-field>

父组件创建FormControl命名country并指定其验证器(在某些形式中,国家是必需的,而在其他形式中则不是)。

问题

通常matInput绑定到FormControl, 并通过[matAutocomplete]指令自动完成。

但是,在我的情况下,情况并非如此,matInput因为FormControlmatInput不受FormControl.

但是我担心该[matAutocomplete]指令,我认为该指令是阅读它与之交互的源matInput及其相关联的FormControl.

我应该如何处理这个?

我是否让事情变得比必要的更复杂?

4

1 回答 1

0

没有 FormControl 的自动完成可以正常工作。

于 2020-02-16T12:33:15.573 回答