我想你应该在这种情况下使用动态组件创建。刚刚尝试在你的服务或组件,哪知道,当你有渲染你的内容水木清华这样的:
import {ComponentResolver, ComponentFactory, ComponentRef, ApplicationRef, Injector} from '@angular/core';
export class SomeServiceOrComponent {
constructor(private resolver:ComponentResolver, private injector:Injector, private appRef:ApplicationRef) {
}
renderComponent() {
return this.resolver
.resolveComponent(YourDynamicComponentClass)
.then((factory:ComponentFactory<YourDynamicComponentClass>) => {
let cmpRef:ComponentRef<YourDynamicComponentClass> =
factory.create(this.injector, null, '.infoWindowsDOMSelector');
(<any>this.appRef)._loadComponent(cmpRef);
return cmpRef;
});
}
}
,只是调用这个方法,你是否需要它。
(<any>this.appRef)._loadComponent(cmpRef)
为RC的上一个版本的一招,但也许很快就应该解决
我是相当新的一般的角,所以请原谅我的无知。此示例是构建到现有类中吗?还是SomeServiceOrComponent引用了用于呈现动态内容的实用程序服务? – somecallmemike
啊我得到它的工作,感谢您的帮助。我猜现在唯一的麻烦就是如何使用这种方法将数据作为@Input从父项传递给新组件? – somecallmemike
得到这个工作也买添加cmpRef.instance.inputData = data;创建cmpRef后; – somecallmemike