javascript – Angular 2 – Cómo configurar el atributo id para el componente cargado dinámicamente

Estoy usando DynamicComponentLoader para cargar el componente hijo y produce el siguiente html:

<child-component> Child content here </child-component>

y así es como estoy cargando el componente en el padre

ngAfterViewInit(){
        this._loader.loadIntoLocation(ChildComponent,this._elementRef,'child');
  }

¿Cómo puedo agregar el atributo id al componente hijo para que produzca el siguiente html:

<child-component id="someId" > Child content here </child-component>
Mejor respuesta
Si es posible, agregaría un campo a ChildComponent y vincularía su identificación:

@Component({
  selector: 'child-component',
  host: {'[id]': 'id'}
})
class ChildComonent {
  id:string;
}
this._loader.loadIntoLocation(ChildComponent,this._elementRef,'child')
.then(cmp => cmp.instance.id = 'someId');

Ver también http://plnkr.co/edit/ihb7dzRlz1DO5piUvoXw?p=preview#

Una forma más hacky sería

this.dcl.loadIntoLocation(Dynamic, this.ref, 'child').then((cmp) => {
  cmp.location.nativeElement.id = 'someId';
});

En lugar de acceder directamente a las propiedades nativeElement, debería ser posible hacer lo mismo con Renderer.

Por favor indique la dirección original:javascript – Angular 2 – Cómo configurar el atributo id para el componente cargado dinámicamente - Código de registro