Angular 从SharedModule FormModule导入到通过SharedModule 2导出的模块

Angular 从SharedModule FormModule导入到通过SharedModule 2导出的模块,angular,typescript,Angular,Typescript,我有一些自动完成模块,与SharedModule一起导出到整个应用程序。在SharedModule中,我已将FormsModule导出到整个应用程序 但当我试图在自动完成模块中使用ngModel时,我得到了一个关于ngModel的错误。当我将FormsModule导入到AutoCompleteModule时,它也可以正常工作 但是我已经在SharedModule中导出了FormsModule。因此,原因是一个问题。我是否可以将SharedModule导入自动完成模块以接收对FormsModule

我有一些自动完成模块,与SharedModule一起导出到整个应用程序。在SharedModule中,我已将FormsModule导出到整个应用程序

但当我试图在自动完成模块中使用ngModel时,我得到了一个关于ngModel的错误。当我将FormsModule导入到AutoCompleteModule时,它也可以正常工作

但是我已经在SharedModule中导出了FormsModule。因此,原因是一个问题。我是否可以将SharedModule导入自动完成模块以接收对FormsModule的访问?(但我在《文件》中看到,这样做是个坏主意)

所以问题是:我应该将FormsModule导入AutoComperteModule aso还是存在更好的实践?
谢谢

自动完成模块
需要它自己的
表单模块
导入。您可能认为将
SharedModule
导入
AutocompleteModule
会起到作用,但不会,因为您会得到循环依赖,从而导致失败

最好的选择是直接导入
FormsModule

@NgModule({
  imports: [ FormsModule ]
})
class AutocompleteModule {}
在SharedModule中,我已将FormsModule导出到整个应用程序


它不是那样工作的。对组件、管道和指令的访问不会被继承。它们需要以某种方式导入到使用它们的模块中。

非常感谢。