如何使用角度2动态追加子节点和创建组件

时间:2016-07-18 08:20:14

标签: angular

我有angular2组件。我需要

  • 在模板中找到节点
  • 将子节点附加到定位节点
  • 动态创建子节点内的其他组件。

是否可以使用Angular 2?

如果模板中已存在该节点,则解决方案已知。

@Component({
    selector: "app",
    templateUrl: "<div #node></div>"
})
export class AppComponent {
  @ViewChild("node", { read: ViewContainerRef }) nodeView;

  constructor(private componentResolver: ComponentResolver) {
  }

  ngOnInit(): void {
    this.componentResolver.resolveComponent(MyComponent)
      .then((factory: ComponentFactory<MyComponent>) => {
         MyComponent instance = this.nodeView.createComponent(factory);
       });
  }
}

通过这种方式,问题是找到@ViewChild指令的动态等价物。

0 个答案:

没有答案