n NgModule的组件范围是什么?

时间:2018-09-24 21:10:40

标签: angular typescript scope angular-components

我将用一个例子来问这个问题。我们有这个模块:

  import { NgModule } from '@angular/core';
...
  import { TodoComponent } from './todo.component';
...

  @NgModule({
    imports: [CommonModule, ReactiveFormsModule],
    exports: [TodosComponent, TodosFiltersComponent],
    declarations: [TodoComponent, TodosComponent, TodosFiltersComponent, TodosPageComponent]
  })
  export class TodosModule {}

我假设TodoComponentTodoPageComponent只能在declarations数组中列出的其他声明的组件中使用,并且它们是唯一可以使用的组件,因为它们不出口?只是确保我正确理解了Angular组件范围...

1 个答案:

答案 0 :(得分:1)

要在应用程序中使用组件,必须将其添加到任何模块的声明中。

要在其基本模块以外的其他模块中使用组件,则必须导出此组件。

考虑组件的“命名空间”之类的模块。

提供者的故事完全不同。