我有 3 个模块,每个模块都有一个组件:
tasks
>tasks
-tasks.component.ts|html|css
-tasks.module.ts
people
>people
-people.component.ts|html|css
-people.module.ts
dynamic-container
>dynamic-container
-dynamic-container.component.ts|html|css
-dynamic-container.module.ts
我正在使用ng-dynamic-component包将任务、人员以及将来的其他一些组件动态设置为 DynamicContainerComponent。
动态容器.html
<div *ngFor="let dynComponent of dynComponents()">
<ndc-dynamic [ndcDynamicComponent]="dynComponent.component">
</ndc-dynamic>
</div>
数组 dynComponents 如下所示:
public dynComponents: ITabComponent[] = [
{ name: 'Tasks', icon: 'tasks', component: TasksComponent },
{ name: 'People', icon: 'people', component: PeopleComponent }
];
现在这已经创建了对 TasksModule 和 PeopleModule 的依赖,但另外 DynamicContainerModule 看起来像这样
@NgModule({
declarations: [DynamicContainerComponent],
imports: [
CommonModule,
TasksModule,
PeopleModule,
DynamicModule.withComponents([TasksComponent, PeopleComponent])
],
exports: [DynamicContainerComponent]
})
export class DynamicContainerModule { }
那么如何才能删除这些依赖项并使 DynamicContainerComponent 真正动态化呢?我想我可以创建特定于应用程序并返回 dynComponents 数组的附加模块(我什至不知道如何正确执行此操作),但 DynamicModule.withComponents 部分更加棘手。