Javascript Rx js如何重用运算符

Javascript Rx js如何重用运算符,javascript,rxjs,Javascript,Rxjs,我正在使用Rx,我有两个使用相同运算符的点击流。 如何提取相同的部分并重复使用 let gender$ = Rx.Observable.fromEvent(gender, 'click').map(e => e.target).filter(t => t.nodeName === "LI").map(li => li.textContent.trim()) let type$ = Rx.Observable.fromEvent(type, 'click').map(e =&g

我正在使用Rx,我有两个使用相同运算符的点击流。 如何提取相同的部分并重复使用

let gender$ = Rx.Observable.fromEvent(gender, 'click').map(e => e.target).filter(t => t.nodeName === "LI").map(li => li.textContent.trim())

let type$ = Rx.Observable.fromEvent(type, 'click').map(e => e.target).filter(t => t.nodeName === "LI").map(li => li.textContent.trim())

let combine$ = Rx.Observable.combineLatest(
  gender$,
  type$
)
我想摘录一下:

.map(e => e.target).filter(t => t.nodeName === "LI").map(li => li.textContent.trim())
Rx的链接部分意味着调用
.map()
.filter()
将获得一个新的流,您可以传递它并返回函数

Rx的链接部分意味着调用
.map()
.filter()
将获得一个新的流,您可以传递它并返回函数

const getTextFromLis = stream$ => stream$.map(e => e.target).filter(t => t.nodeName === "LI").map(li => li.textContent.trim());

let gender$ = getTextFromLis(Rx.Observable.fromEvent(gender, 'click'));