Angular2: Insert a dynamic component as child of a container in the DOM

前端 未结 6 1873
长发绾君心
长发绾君心 2020-11-29 03:44

Is there a way to insert dynamically a component as a child (not a sibling) of a DOM tag in Angular 2?

There are plenty of examples around there to

6条回答
  •  暖寄归人
    2020-11-29 04:14

    Easier approache is now available with Portal available in @angular/cdk.

    npm i @angular/cdk

    app.module.ts:

    import { PortalModule } from '@angular/cdk/portal';
    
    @NgModule({
      imports: [PortalModule],
      entryComponents: [MyDynamicComponent]
    })
    

    SomeComponent:

    @Component({
      selector: 'some-component',
      template: ``
    })
    export class SomeComponent {
      ...
      this.myPortal = new ComponentPortal(MyDynamicComponent);
    }
    

提交回复
热议问题