Angular2 Observables avec l'intervalle de
J'ai une fonction qui doit être appelée sur toutes les 500ms. La façon dont je suis en train de regarder le faire avec angular2 est à l'aide d'intervalles et observables. J'ai essayé cette fonction pour créer des observables:
counter() {
return Observable.create(observer => {
setInterval(() => {
return this.media.getCurrentPosition();
}, 500)
})
}
Avec ce code pour l'abonné:
test() {
this.playerService.initUrl(xxxx) //This works
this.playerService.counter().subscribe(data => {
res => {
console.log(data);
}
})
}
Je suis très nouveau à observables et angular2 donc je prend peut-être pas la bonne approche complètement. Toute aide est appréciée.
OriginalL'auteur Drakee510 | 2016-06-23
Vous devez vous connecter pour publier un commentaire.
La
Observable
de classe statiquesinterval
méthode de prise de millisecondes (comme lesetInterval
méthode) en tant que paramètre:Et dans votre composant ou de l'endroit où:
.flatmap()
à.flatMap()
pour le faire fonctionner correctement.Ah, bien sûr - de la faute de frappe! Heureux, je pourrais vous aider! 🙂
juste une remarque pour les autres;
Observable.interval
est statique/méthode de classe, vous ne pouvez pas appeler une instance d'Observables (j'ai rencontré un problème avec ce angulaire lors de la tentative de répéter unehttp.get
)Observable.interval()
est maintenant obsolète pas le moyen privilégié de la création d'une telle observable. La façon de le faire est par le IntervalObservable ou TimerObservable. [ actuellement dans Typscript 2.5.2, rxjs 5.4.3, Angulaire 5.0.0 ]avez-vous des sources?
OriginalL'auteur rinukkusu