如何在另一个内部使用组件

时间:2019-05-06 04:14:19

标签: angular typescript

我不能使用app.module,因为这是一个大型应用程序。我要在该组件中使用此组件的组件没有模块文件。

我尝试导入并使用@Ngmodule,但不起作用。

  

未捕获的错误:模板解析错误:'x'不是已知元素:

2 个答案:

答案 0 :(得分:1)

如果您的应用程序太大,则最好为功能创建不同的模块。例如,您可以制作一个auth module,然后在其中添加登录名和注册组件。您必须声明属于该子模块内每个模块的组件。对于该模块,您也可以添加一个单独的路由文件。如果要将组件的选择器之一用作,则需要将其导出到子模块中。不要忘记在子模块中导入CommonModule

@NgModule({
declarations: [
 BreadcrumbsComponent,
 ModalLoginComponent,
],
imports: [
 CommonModule,
 RouterModule,
 FormsModule,
 NgxSpinnerModule
],
exports: [
 BreadcrumbsComponent,
 ModalLoginComponent
]
})
export class SharedModule {}

app.module中,您必须导入子模块。

@NgModule({
declarations: [
 AppComponent,
 WorldWideComponent,
 HeaderComponent,
 FooterComponent,
 PageNotFoundComponent
],
imports: [
 BrowserModule,
 BrowserAnimationsModule,
 AppRoutesModule,
 SharedModule,
 CoreModule,
 UserModule,
 NgbModule
],
providers: [],
bootstrap: [AppComponent]
})
export class AppModule {
}

答案 1 :(得分:0)

您不要在指令中放置组件

您在@NgModule声明中注册了它:

@NgModule({
imports: [ BrowserModule ],
declarations: [ App , MyChildComponent ],
bootstrap: [ App ]
})

,然后您将其作为<my-child></my-child>

放在“家长的模板” HTML中