Angular2: cargar componentes dinámicamente desde una respuesta de servicio
Sé que esta no es la mejor solución, pero me gustaría poder cargar componentes dinámicamente desde una respuesta JSON, algo en este sentido:
app.component@Component({
selector: 'my-app',
template: '<h1>My First Angular 2 App</h1> {{component.title}} {{component.selector}}',
providers: [AppService],
directives: [ExampleComponent]
})
export class AppComponent implements OnInit {
component:{};
constructor(
private _appService: AppService) {
}
ngOnInit() {
this.component = this._appService.getComponent();
}
}
app.service@Injectable()
export class AppService {
component = {
title: 'Example component',
selector: '<example></example>'
}
getComponent() {
return this.component;
}
}
ejemplo.componente@Component({
selector: 'example',
template: 'This a example component'
})
export class ExampleComponent {
}
Si ejecuto este ejemplo, mi salida es<example></example>
pero en realidad no representa el componente. También he tratado de usar[innerHtml]="component.selector"
, pero eso tampoco funcionó. ¿Alguien tiene una idea o sugerencia?