4
我想將多個組件綁定到一個模塊(Widget1Module
)中,然後將該模塊注入到另一個模塊(AdminModule
)中,使AdminModule
中的所有組件都可以訪問組件Widget1Module
。Angular2,包含組件模塊而不是所有組件分開
我想這樣做是爲了避免AdminModule
中的declarations
數組變得越來越大並且難以管理,請參閱下面的內容以更深入地解釋我的問題。
我有一個模塊文件像這樣:
import { CommonModule } from '@angular/common';
import { RoutingModule } from './admin-routing.module';
import { Declaration1 } from "./declaration1.component";
import { Declaration2 } from "./declaration2.component";
import { Declaration3 } from "./declaration3.component";
@NgModule({
imports: [
CommonModule,
RoutingModule,
],
declarations: [
Declaration1,
Declaration2,
Declaration3,
]
})
export class AdminModule {}
我想創建一個組件,可以內任何「聲明」模塊被使用(Widget1Component
)。我知道我可以做這樣的事情:
import { CommonModule } from '@angular/common';
import { RoutingModule } from './admin-routing.module';
import { Declaration1 } from "./declaration1.component";
import { Declaration2 } from "./declaration2.component";
import { Declaration3 } from "./declaration3.component";
import { Widget1 } from "./widget1.component";
@NgModule({
imports: [
CommonModule,
RoutingModule,
],
declarations: [
Declaration1,
Declaration2,
Declaration3,
Widget1
]
})
export class AdminModule {}
這將工作,但因爲這個應用程序的增長,我希望能夠將所有部件捆綁到另一個模塊,然後注入該模塊在此模塊中,像這樣:
import { CommonModule } from '@angular/common';
import { RoutingModule } from './admin-routing.module';
import { Declaration1 } from "./declaration1.component";
import { Declaration2 } from "./declaration2.component";
import { Declaration3 } from "./declaration3.component";
import { Widget1Module } from "./widget1.module";
@NgModule({
imports: [
CommonModule,
RoutingModule,
Widget1Module
],
declarations: [
Declaration1,
Declaration2,
Declaration3
]
})
export class AdminModule {}
但是,當我嘗試做這樣的事情,我不斷收到錯誤,應用程序並不知道包含在Widget1Module
小部件。
使用'NgModule'的'exports'屬性? –