jjzjj

subject-observer

全部标签

javascript - 我如何解析另一个 Observable 中的一个 Observable? - RXJS

我有一个Observable,我在其中使用了另一个observable,但是第二个Observable我无法解析。这是代码:returnObservable.fromPromise(axios(config)).map(res=>{return{accessToken:res.data.access_token,refreshToken:res.data.refresh_token}}).map(res=>{return{me:getMe(res.accessToken),accessToken:res.accessToken,refreshToken:res.refreshToken

javascript - Cold observable 和 Replay subject 之间的区别?

我可以从文档中看到:ColdObservables从一开始就向每个Observer发出整个值序列。和ReplaySubject向任何观察者发送源Observable发出的所有项目,无论观察者何时订阅。那么这两个概念有什么区别呢?谢谢 最佳答案 一旦ReplaySubject订阅了源observable,源就开始发射,并且ReplaySubject成为一个热的observable。从订阅者的Angular来看,订阅ReplaySubject可能并不明显,因为它获取了所有先前发出的值。但是ReplaySubject只订阅源一次,因此主题

javascript - RxJS Observable 返回数组,每次数组迭代运行另一个函数

我有一个函数getNews(),它基本上返回angular的http.get请求。请求的结果是Id的数组。我想遍历我得到的这个数组并运行另一个http.get请求(函数getItem(id)),然后它将返回从服务器接收的单个Id的对象。我试过这样使用它:getLatest(){returnthis.http.get('all_news_url').map(res=>res.json())//IeventriedcreatingObservablefromarrayandgetonly5elements//.map(res=>Observable.from(res.json()))//.

javascript - 如何重复 ajax 请求,直到满足 RxJS Observable 的条件?

我正在尝试重复请求,直到响应包含使用RxJS的数据,此时我想调用成功(或失败)处理程序,但我在使用RxJS时遇到了麻烦。这是我目前的做法://...redux-observableactionobservable.mergeMap(()=>fetchData().repeatWhen(response=>response.takeWhile(({data})=>!data.length).of(response))).map(successFunction).catch(failureFunction);免责声明:我对RxJS很陌生.... 最佳答案

javascript - Event.observe(window, "load", function(){..} v/s window.onload = function(){..}

即使两者做同样的事情,我只想知道使用一个比另一个有什么特别的优势吗?Event.observe(window,"load",function(){//dosomething});window.onload=function(){//dosomething} 最佳答案 区别在于window.onload是在DOMLevel0事件模型中定义的,将清除所有早期注册的事件。这是来自旧API的“native”调用。来自原型(prototype)javascript框架的Event.observe将确定可用的最佳事件附加器。外观模式。在现代浏览

javascript - rxjs 在 map Rx.Observable.range(1, 5).map 中使用 async/await

我想使用async/await从rxjs获取列表。我该怎么办?functiongetData(num){returnnewPromise((resolve,reject)=>{resolve(num+1)})}asyncfunctioncreate(){varlist=awaitRx.Observable.range(1,5).map(async(num)=>{constdata=awaitgetData(num)returndata}).toArray().toPromise()returnlist}Rx.Observable.fromPromise(create()).subscr

javascript - RxJS,Observable,如何保存值并将映射切换到另一个

//ticker$willupdateevery3s//showHand$willonlytrigerafteruserclickbutton//IwouldliketotakelasttickerpriceasuserorderpricewhenuserclickbuttonletlastPrice:number;this.ticker$//WhatIamdoingnowispreservevaluetovairablehere..do(ticker=>lastPrice=ticker.closePrice).switchMap(()=>this.showHand$).subscri

javascript - document.observe ('dom:loaded' , 函数 () {

有没有办法让这个原型(prototype)js只在dom发生变化而没有加载时触发? 最佳答案 你可以观察到元素是这样变化的$('element').observe('change',function(e){});这是为表单元素保留的-textarea、select和input。最终代码看起来像这样:document.observe('dom:loaded',function(){$('element').observe('change',function(e){//dosomethinghere});});

javascript - 将 observables 数组传递给 zip

我有一个observable数组,想传递给Rx.Observable.zip。我试过了,但根本没有订阅。代码片段(仅作为示例):constsourceOne=Rx.Observable.of('Hello');constsourceTwo=Rx.Observable.of('World!');constsourceThree=Rx.Observable.of('Goodbye');constsourceFour=Rx.Observable.of('World!');constarr$=[sourceOne,sourceTwo,sourceThree,sourceFour];constz

javascript - Intersection Observer API 触发回调,即使元素不在 View 中

我正在尝试查找元素何时出现在屏幕上(尝试实现无限加载器)。为列表中的最后一项绑定(bind)观察者并收听,不幸的是在chrome62mac10.10中,即使我正在观察的元素不在视口(viewport)中,回调也会触发。当我检查相交率时,我可以很容易地阻止它。这是IntersectionObserver的工作方式吗?在此先感谢您的帮助。bindIO();functionioCallback(entries,observer){console.log("entries");console.log(entries);entries.forEach(entry=>{//Eachentrydes