将组件动态注入到指定位置的另一个组件中

时间:2016-07-27 01:33:26

标签: typescript angular

在我们的应用程序中,我们有一个tortoisegit,它有许多基于配置/权限/等的图块。这些"图块"可以根据用户偏好以任何顺序排列。

任务看似简单:

  

在模板中创建占位符,然后选择占位符并根据需要将组件注入/实例化到视图中

例如:

DashboardComponent

注意:A&#34; Tile&#34;是一流的@Component({ ..., template: ` <div class="container"> <div class="row"> <div #placeholder></div> </div> </div> ` }) export class DashboardComponent{ constructor(private dashboardService: DashboardService){} ngOnInit(): void{ // Get all tiles that should be displayed for this user in order const tiles = this.dashboardService.getTiles(); // Inject / instantiate the components into the DasboardComponent at #placeholder } } 。例如,我有一个@Component和一个ProfileTileComponent

我可以创建一个ArticlesTileComponent但是如何告诉它将它放在DOM中的哪个位置?

我尝试使用ComponentFactory / ComponentResolver抓取对#placeholder的引用,但这似乎并没有给我正确的对象。

@ViewChild似乎已弃用,所以我没有进一步了解。

@Query似乎没有实例化组件

我非常确定这在Angular 2中是可行的,但是没有记录。

这是一个Angular2.0.0-rc.4应用程序。

0 个答案:

没有答案