Angular-动态实例化组件,等待其初始化并获取其HTML

时间:2018-07-02 13:07:50

标签: angular

我使用外部依赖项(ng2-table)来显示可以过滤和排序的简单表。

该库接受HTML字符串作为单元组件。我想提供我在应用程序中其他地方使用的组件的HTML。

我尝试使用ResolverComponentFactory创建组件,并为组件提供填充HTML所需的数据,然后将externalHTML用作组件的HTML。

const componentFactory = this._resolver.resolveComponentFactory(myComponent);
const component = componentFactory.create(this._injector); 
component.instance.data = data;

const cellContent = component.instance.myElementRef.nativeElement.outerHTML;

我以为我需要等待ngContentInit钩子,但是由于未呈现组件,因此init不会追加(事件为ngOnInit)。

我知道我可以使用一个函数创建相同的字符串,但是当我在应用程序的不同部分中重复使用相同的模板时,能够使用该组件真的很不错。

我也知道我会尝试一些棘手的事情,但不是很干净,但是我会尽我所能来做出最大的妥协。

0 个答案:

没有答案