获取AppComponent ViewContainerRef

时间:2018-08-30 16:36:02

标签: angular typescript angular6

我正在寻找一种从服务中获取AppComponent ViewContainerRef的方法。

我在网上找到了诸如this codethis codethis issue之类的代码,但是它们都是针对Angular的早期版本(我正在使用版本6)。

我想获得此参考,而不必自己通过设置器进行设置。

现在,我必须将ViewContainerRef注入AppComponent中并提供给服务。

我想直接从服务中获取注入的提供者的引用,类似

  constructor(
    private applicationRef: ApplicationRef
  ) {
    this.viewContainerRef = applicationRef.getAppViewRef();
  }

用例是在主体级别或AppComponent级别创建组件并将其附加到文档中;这将允许我创建通知,对话框...

2 个答案:

答案 0 :(得分:1)

您可以像在提供的链接中一样使用它。我在这里创建了一个堆叠闪电战:https://angular-5lhjkq.stackblitz.io AppService 中注入ApplicationRef,并用attachView DummyComponent > AppComponent 到主体,并进入角度应用。

这项工作似乎与以前的版本完全一样。

答案 1 :(得分:0)

由于无法结束我的问题,所以我正在回答。

对于那些寻找类似Thoughtram's Dominic Elm的人来说,这是使用CDK的OverlayPortals的一个很好的例子。

我不是在寻找对根组件的引用,而是通过该组件将组件动态地附加到应用程序中。