RXJS Switchmap - 它的价值是否可行

时间:2017-02-17 20:24:38

标签: angular rxjs observable

有没有办法在特定值上切换map?

 jobsFilter(value) {
    console.log(value);
   value.switchMap(value => this.http.get(`http://localhost:55250/api/search/jobs/${value}`))
      .map(res => res.json());
  }

2 个答案:

答案 0 :(得分:0)

 this.o = new Subject<string>(value);
 this.o2 = o.switchMap(t=> this.http.get(`http://localhost:55250/api/search/jobs/${value}`))
    .map(res=>res.json());

设置订阅者:

 this.o2.subscribe(...);

触发:

jobsFilter(value) {
    this.o.next(value);
}

答案 1 :(得分:0)

将您的简单值包含在Observable中“Everything is a Stream”

Observable.of(yourValue).switchMap(yourSwitchMapFunction)

@pixelbits Subject的构造函数没有任何参数,而且值较少,因为Subject的值的生成者在流之外,如果你想使用Subject,你需要做这样的事情:

const mySubject = new Subject<string>();
mySubject.switchMap(mySwitchMapFunction);

mySubject.next(myValue);