Angular 2动态组件单击事件

问题描述:

我正在尝试动态创建组件,但我想向它添加一个单击操作,但我不知道该如何操作。我试图这样做:Angular 2动态组件单击事件

constructor(public navCtrl: NavController, private resolver: ComponentFactoryResolver) { 
    this.lastSelectedResource = this.defaultImage; 
    } 

    public createNew() { 
    this.container.detach(0); 
    } 

    ngAfterContentInit() { 
    let widgetFactory = this.resolver.resolveComponentFactory(CreateComponent); 
    let widgetReference = this.container.createComponent(widgetFactory); 
    widgetReference.instance.click = this.createNew; 
    } 

但是不是这样做的。任何人都知道如何?

,你可以注入渲染器,并使用

this.renderer.listen(widgetReference.location.nativeElement, 'click', (event) => { this.createNew(e);}); 

类似Angular2 - catch/subscribe to (click) event in dynamically added HTML

widgetReference.location提供ElementRef

+1

由于U,这是我一直在寻找的解决方案! :d – luisurrutia