我想创建一个工具提示控件之类的组件。问题在于它仅适用于简单文本,但是当我想传递更复杂的ng模板(如绑定等)时,它就会中断。总的来说,我已经创建了一个主机组件,其中将显示传递的模板,以及创建该组件的指令。 但是似乎对于所传递的模板而言,所传递的上下文不可见。
指令:
@HostListener("mouseenter")
enter() {
const factory = this.resolver.resolveComponentFactory(CustomContainerComponent);
const injector = Injector.create([]);
this.vcr.createComponent<CustomContainerComponent>(factory, 0, injector, this.generate());
}
generate(): any[][] {
const context = { // this is mocked for now
name:"John"
};
const viewRef = this.customControl.createEmbeddedView(context);
return [viewRef.rootNodes];
}
以下是一个简单的例子,说明了堆栈闪电: https://stackblitz.com/edit/angular-mzhccs