在RC5之前,我正在动态加载组件:
System.import('path/to/MyComponent')
.then(fileContents => fileContents['MyComponent'])
.then(component => {
this.dynamicComponentLoader.loadNextToLocation(component, ..)
.then(() => {
...
});
});
由于RC5不起作用,因为DynamicComponentLoader
已被弃用。问题是它的前身ComponentFactoryResolver
将类型作为参数。我需要一种使用字符串名称加载组件的方法。我怎么能这样做?
答案 0 :(得分:0)
管理这样做:
System.import('path/to/MyComponent')
.then(fileContents => fileContents['MyComponent'])
.then(component => {
let factory = this.componentFactoryResolver.resolveComponentFactory(component);
this.container.createComponent(factory); //container: ViewContainerRef
});