【发布时间】:2019-07-22 04:50:30
【问题描述】:
我有以下倒计时:
userClick=new Subject()
resetCountdown(){this.userClick.next()}
setCountDown() {
let counter = 5;
let tick = 1000;
this.countDown = timer(0, tick)
.pipe(
take(counter),
map(() => --counter),
takeUntil(this.userClick),
finalize(() => {
if (this.currentQuestionNumber < this.questionsToAsk)
this.showNextQuestion();
else {
this.endQuiz();
}
})
);
}
当takeUntil(this.userClick) 发生时,我不希望finalize 被执行。有没有可能实现这一目标?我只希望在倒计时达到0 并且之前没有被takeUntil 中断时执行finalize
【问题讨论】:
-
尝试使用扁平箭头:takeUntil(()=>this.userClick) -我不知道是否有效,这只是一个建议
标签: angular typescript rxjs pipe finalize