Javascript RxJS运算符,该运算符不';在完成之前,不要再次发射到内部可见光
我正在寻找一个类似于Javascript RxJS运算符,该运算符不';在完成之前,不要再次发射到内部可见光,javascript,rxjs,Javascript,Rxjs,我正在寻找一个类似于switchMap的操作符,但是我希望它在第二次发射之前,不要取消之前的内部可观测值,而是等待其内部可观测值完成 一个常见的用例是用户快速点击按钮,通过管道发送到HTTP请求,然后转发显示,如下所示: 单击$.pipe(switchMap(()=>this.http.get(“/something”)).subscribe(res=>/) 这将在用户每次单击按钮时取消http请求。相反,我想忽略按钮的点击,直到内部可观察对象完成,然后再向它发出第二次,以此类推 这个用例是否有
switchMap
的操作符,但是我希望它在第二次发射之前,不要取消之前的内部可观测值,而是等待其内部可观测值完成
一个常见的用例是用户快速点击按钮,通过管道发送到HTTP请求,然后转发显示,如下所示:
单击$.pipe(switchMap(()=>this.http.get(“/something”)).subscribe(res=>/)代码>
这将在用户每次单击按钮时取消http请求。相反,我想忽略按钮的点击,直到内部可观察对象完成,然后再向它发出第二次,以此类推
这个用例是否有一个操作符或者一个简单的操作符集合?谢谢 检查。它似乎完全符合你的需要
排气图忽略每个新的投影可见光
如果之前的预计可观测数据尚未完成。一旦
一个完成后,它将接受并展平下一个投影
观察并重复这个过程
检查。它似乎完全符合你的需要
排气图忽略每个新的投影可见光
如果之前的预计可观测数据尚未完成。一旦
一个完成后,它将接受并展平下一个投影
观察并重复这个过程
下面是使用exhaustMap操作符的示例
var clicks=Rx.Observable.fromEvent(document.querySelector(“按钮”),“click”);
var结果=点击次数。排气量图((ev)=>{
ev.target.setAttribute(“禁用”,真);
返回Rx.可观测间隔(5000).取(1)
.do(()=>ev.target.removeAttribute(“禁用”);
});
subscribe(x=>console.log(x))代码>以下是使用排气图操作符的示例
var clicks=Rx.Observable.fromEvent(document.querySelector(“按钮”),“click”);
var结果=点击次数。排气量图((ev)=>{
ev.target.setAttribute(“禁用”,真);
返回Rx.可观测间隔(5000).取(1)
.do(()=>ev.target.removeAttribute(“禁用”);
});
subscribe(x=>console.log(x))代码>