我需要从触发事件中动态添加组件,我已设法使用loadasroot和loadnexttolocation,但问题是那些只返回ComponentRef的承诺,我无法找到一个wat来访问属性和调用添加组件中的方法。我已经阅读了一些关于loadintolocation的线程,但似乎他们在释放候选人后删除了它?
答案 0 :(得分:1)
现在您可以通过这种方式使用const
类。在ComponentResolver
实例上,您可以访问新创建的组件的属性和方法。
ComponentRef
答案 1 :(得分:0)
then(cmpRef:ComponentRef => {
cmpRef.instance.myProp = someValue;
cmpRef.instance.someOutput.subscribe(val => this.someOtherOutput.next(val));
});
另请参阅Angular 2 dynamic tabs with user-click chosen components了解新方式ViewContainerRef.createComponent()
。
DynamicComponentLoader
已被弃用。