Angular2: Carregando componentes dinamicamente a partir de uma resposta de serviço
Estou ciente de que essa não é a melhor solução, mas gostaria de poder carregar componentes dinamicamente a partir de uma resposta JSON, algo como:
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;
}
}
example.component@Component({
selector: 'example',
template: 'This a example component'
})
export class ExampleComponent {
}
Se eu executar este exemplo, minha saída é<example></example>
mas na verdade não processa o componente. Também tentei usar[innerHtml]="component.selector"
, mas isso também não funcionou. Alguém tem uma ideia ou sugestão?