2016-01-07 28 views

回答

0

我嘗試了不同的方法併成功,我使用DynamicComponentLoader將我的組件加載到元素選擇器。

DynamicComponentLoader.loadAsRoot(Component1, '#div1, injector); 

此方法將Component1加載到id = div1的元素。 DynamicComponentLoader是非常導入的服務,應該在每個ng2書中。

+0

這會創建一個新的component1實例嗎?如何將現有組件移動到特定位置? –

+0

接受的答案未解決「如何在動態創建的組件中設置投影」的問題 –

0

如果要在組件內添加jnject elementRef: ElementRef並在組件構造函數中使用elementRef.nativeElement.appendChild(someElement)。 從外部只需使用不同的方法來獲取DOM元素並向其添加HTML。

+0

請您詳細說明一下。你的問題也沒有提供很多信息。也許你正在尋找像http://stackoverflow.com/questions/34636435/angular2-what-is-the-best-way-to-get-a-reference-of-a-template-element(或者'@ ContentChild') –

+0

我做了你建議的 'elementRef.nativeElement.appendChild(someElement)' 它一半工作,DOM獲得了新的選擇器,但模板不渲染。 我如何強制選擇器呈現? 第二:有沒有辦法插入組件的選擇器? – almog

+0

我看,你沒有說明你想要添加到DOM。我的方法只適用於純HTML。如果您想動態添加Angular2組件,則需要使用DCL。 –

相關問題