Comment puis-je ajouter des éléments à Observable
Comment puis-je ajouter des articles à Observable
?
C'est un peu de code:
this.logEntries = this.controllerService.getLog(this.controller.remoteID, this.skip, this.max);
this.logEntries.subscribe(a => {
this.allLogEntries.add(this.logEntries)
});
et voici leurs déclarations:
logEntries: Observable<Log[]>;
allLogEntries: Observable<Log[]> = Observable.empty<Log[]>();
Je veux ajouter des éléments à allLogEntries comme ils sont récupérés à partir du service web. Comment puis-je faire cela?
source d'informationauteur Tim Liberty
Vous devez vous connecter pour publier un commentaire.
Peut-être le
scan
opérateur pourrait vous intéresser. Voici un exemple:Voir cette question pour plus de détails:
Si vous voulez vous joindre deux observables ensemble, vous devez par exemple
combineLatest
:Cela vous donne accès aux dernières valeurs de chaque observable, mis à jour en tant que l'un ou l'autre changement, et vous pouvez les combiner en tant que de besoin.
Si vous voulez être en mesure de pousser manuellement les entrées dans l'une des source observables, d'en faire un
Sujet
:ensuite, vous pouvez invoquer une mise à jour avec:
et votre abonnement sera de recevoir la nouvelle
logEntries
avec les plus récentesallLogEntries
. Selon le comportement que vous voulez, vous pouvez utiliser unReplaySubject
ouBehaviourSubject
au lieu de la vanilleSubject
.Prendre un coup d'oeil à BehaviorSubject:
C'est un
Observable
où vous pouvez pousser un nouvel élément comme objet contenant.