我有一个函数,大约每500毫秒需要调用一次。我正在使用angular2进行查看的方式是使用时间间隔和可观察值。我已经尝试过使用此功能来创建可观察的对象:
counter() {
return Observable.create(observer => {
setInterval(() => {
return this.media.getCurrentPosition();
}, 500)
})
}
使用此代码为订户:
test() {
this.playerService.initUrl(xxxx) // This works
this.playerService.counter().subscribe(data => {
res => {
console.log(data);
}
})
}
我对Observables和angular2还是很陌生,所以我可能会完全采用错误的方法。任何帮助表示赞赏。
的Observable
类有一个静态interval
方法以毫秒(如setInterval
方法)作为参数:
counter() {
return Observable
.interval(500)
.flatMap(() => {
return this.media.getCurrentPosition();
});
}
并且在您的组件中或任何地方:
test() {
this.playerService.initUrl(xxxx) // This works
this.playerService.counter().subscribe(
data => {
console.log(data);
}
);
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句