Guest User

Untitled

a guest
Jun 25th, 2018
73
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.12 KB | None | 0 0
  1. this.betTable$: BehavorSubject<Table[]>;
  2.  
  3. getTable(): Observable<Table[]> {
  4. return
  5. ... fetch from API
  6. .mergeMap(betting => {
  7. this.betTable$.next(betting);
  8. return this.betTable$;
  9. }
  10. }
  11.  
  12. join() {
  13. this.service.join()
  14. .mergeMap( () => this.service.getTable()
  15. .first()
  16. .subscribe()
  17. }
  18.  
  19. remove() {
  20. this.service.remove()
  21. .mergeMap( () => this.service.getTable()
  22. .first()
  23. .subscribe()
  24. }
  25.  
  26. ...
  27. this.service.getTable()
  28. .subscribe( () => {
  29. // some processing to format row to display
  30. this.data.push(row);
  31. }
  32.  
  33. betters$: BehaviorSubject<Table[]>[];
  34.  
  35. this.betTable$: BehavorSubject<Table[]>;
  36. this.betters$ = [];
  37.  
  38. getTable(round) {
  39. let key = 'table:round:' + round;
  40. return
  41. ... fetch from API
  42. .mergeMap(betting => {
  43. if (key in this.betters$) {
  44. this.betters$[key].next(betting);
  45. return this.betters$[key];
  46. }
  47.  
  48. // add new observable to array
  49. this.betters$[key] = this.betTable$;
  50. this.betTable$.next(betting);
  51. return this.betTable$;
  52. }
  53. }
Add Comment
Please, Sign In to add comment