Angular2可观察的定时器条件 [英] Angular2 Observable Timer Condition
本文介绍了Angular2可观察的定时器条件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个计时器:
initiateTimer() {
if (this.timerSub)
this.destroyTimer();
let timer = TimerObservable.create(0, 1000);
this.timerSub = timer.subscribe(t => {
this.secondTicks = t
});
}
如何在60分钟后向用户添加条件?我尝试着看几个问题(这和此),但它不是点击我.还是RxJS模式的新手...
How would I add the condition to after 60 minutes present a popup to the user? I've tried looking at a couple of questions (this and this) but it's not clicking for me. Still new to RxJS patterns...
推荐答案
您不需要RxJS.您可以使用旧的setTimeout
:
You don't need RxJS for that. You can use good old setTimeout
:
initiateTimer() {
if (this.timer) {
clearTimeout(this.timer);
}
this.timer = setTimeout(this.showPopup.bind(this), 60 * 60 * 1000);
}
如果您确实必须使用RxJS,则可以:
If you really must use RxJS, you could:
initiateTimer() {
if (this.timerSub) {
this.timerSub.unsubscribe();
}
this.timerSub = Rx.Observable.timer(60 * 60 * 1000)
.take(1)
.subscribe(this.showPopup.bind(this));
}
这篇关于Angular2可观察的定时器条件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文