我有2个事件发射器
public event1: EventEmitter<any> = new EventEmitter();
public event2: EventEmitter<any> = new EventEmitter();
两者都在组件
上定义为outputs
@Component({
...
outputs: ['event1', 'event2']
})
我试图在点击事件之后调用它,例如
this.event1.emit();
setTimeout(() => {
//do your operation
this.event2.emit();
}, 10000);
一个事件需要在另一个事件后10秒发出,我使用setTimeout发出第二个事件。问题是这些事件中只有一个会被立即调用,例如,如果我对event1.emit
发表评论,event2
被正确发出但如果我取消注释,则event1
被发出,第二个被忽略了。我尝试用一个emitter
来做,但即使在这种情况下,也只启动1个呼叫而忽略其他呼叫。我不想使用observable,对这种行为感到很困惑。
编辑:这是我从父组件
调用它的方式<auction-remaining-time ... (event1)="event1Called($event)" (event2)="event2Called($event)"></auction-remaining-time>