我有一个通过entryComponents注入组件的场景 . 在这种情况下,父组件如何监听子组件事件(即通过eventemitter发出)
如果你注入它,这意味着你自己实例化了它,那么你可以简单地保留它的引用并订阅public EventEmitter .
EventEmitter
创建 ComponentPortal 后,您将其附加到 PortalOutlet 或 OverlayRef . attach 的返回值包含注入组件的实例 .
ComponentPortal
PortalOutlet
OverlayRef
attach
例如,假设您的组件名为 SomeComponent ,并且 EventEmitter 名为 someEventEmitter :
SomeComponent
someEventEmitter
let portal = new ComponentPortal(componentFactory.componentType); let component = overlayRef.attach<SomeComponent>(portal); component.instance.someEventEmitter.subscribe(() => { //Some code });
1 回答
如果你注入它,这意味着你自己实例化了它,那么你可以简单地保留它的引用并订阅public
EventEmitter
.创建
ComponentPortal
后,您将其附加到PortalOutlet
或OverlayRef
.attach
的返回值包含注入组件的实例 .例如,假设您的组件名为
SomeComponent
,并且EventEmitter
名为someEventEmitter
: