Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to know which observable triggers change in Rx.Observable.combineLatest [duplicate]

I can use Rx.Observable.combineLatest so that I will notify the changes whenever any observable changes. But how can I know which observable changes?

var s1 = someObservable1();
var s2 = someObservable2();
Rx.Observable.combineLatest(s1, s2).subscribe(function(){
    // How to know which Observable triggers combineLatest change

});
like image 972
user1668903 Avatar asked Jan 11 '17 07:01

user1668903


1 Answers

RxJs provides no means to accomplish this. Nevertheless you can do it with additional state:

var trigger = "";

Rx.Observable
  .combineLatest(
    s1.do(function() { trigger = "s1"; }),
    s2.do(function() { trigger = "s2"; }))
  .subscribe(function(){
    // use trigger
  });
like image 134
Sergey Sokolov Avatar answered Nov 11 '22 16:11

Sergey Sokolov