从子组件Angular 4中获取ElementRef

时间:2017-07-11 03:35:45

标签: angular

我正在尝试使用ElementRef将多子组件注入父组件,但是当我尝试获取子组件html时出现了问题

我的孩子组件

  ID   NAME  DEPT 
  3     B     CDU

我想在我的父组件

中获取该子HTML
html: string = '';
constructor(private elementRef: ElementRef) { }
ngAfterContentInit() {
  this.html = this.elementRef.nativeElement;
}

我该怎么做?还是另一种方式?

我想要的所有内容都是在另一个组件中获取组件的HTML

请帮助!!

1 个答案:

答案 0 :(得分:0)

我通过这种方式解决了我的问题:

我的父组件:

import { TextStepComponent } from './components/text/text.component';

constructor(
  private viewContainerRef: ViewContainerRef,
  private componentFactoryResolver: ComponentFactoryResolver,
) { }

ngAfterViewInit() {
  const componentFactory = 
   this.componentFactoryResolver.resolveComponentFactory(TextStepComponent);
  const containerRef = 
   this.viewContainerRef.createEmbeddedView(this.dataContainer);
  console.log(containerRef);
  const dynamicComponent = 
   containerRef.createComponent(componentFactory).instance;
  dynamicComponent.data = { content: 'xxx' };
}