首页 > TAG信息列表 > rxjs5

javascript-错误后继续订阅

我有一个代码,其中我为每个id发出ajax请求并在结果出现时对其进行处理.这是我的实际代码和jsfiddle的简单副本: var ids = [1,2,3,4,5,6]; var ids$= (id) => { return Observable.of(id); }; var loadIds$= (id) => { if(id == 4) return xhr('/echo/jsoneee/', {id: id})

javascript-RxJs Observable完成多次

以下是反应式代码(RxJs)的简短代码段 let subj = new Rx.Subject(); let chain = subj .switchMap(v => Rx.Observable.of(10*v).do(vv => console.log("Switch map", vv))) .share() .take(1); function subscribe(){ chain.subscribe(v => console.lo

javascript-RxJS中的`race`运算符是否相反?

我有两个可观察对象,我想听最后一个发出第一个值的对象,是否有运算符可用于此?像这样: let obs1 = Rx.Observable.timer(500,500); let obs2 = Rx.Observable.timer(1000,1000); // I want the values from this one let sloth = Rx.Observable.sloth(obs1,obs2); 可观察到的树懒将

javascript – 在RxJS 5中共享重放

根据RxJS 5 MIGRATION.md,看起来像shareReplay()已被删除. >为什么? > .publishReplay(1).refCount()是否忠实地复制了这种行为?基本上我需要将最新的单个数据集重播给任何新订阅者.解决方法:简短的回答:引用Blesh先生: The problem RxJS 5 is trying to solve is that ConnectableOb

javascript – 我如何使用`do`作为RxJS可调运算符?

RxJS 5.5允许抓取lettable运算符并像这样管道: import { ajax } from 'rxjs/observable/dom/ajax' import { catchError, map, retry } from 'rxjs/operators' ajax.getJSON('https://example.com/api/test') .pipe( retry(3, 1000), map(fetchUse

javascript – Observable最后订阅

根据this artcle,订阅的onComplete和onError函数是互斥的. onError或onComplete事件的含义将在我的订阅中启动. 我有一个逻辑块,无论是否收到错误都需​​要执行,或者我成功完成了大量的信息. 我查找了像finally in python这样的东西,但我找到的只是finally,需要附加到我创建的可观

javascript – 如何使用rxjs在angular2中的输入keyup事件上实现去抖服务

我正在尝试调用输入加密事件的服务. HTML <input placeholder="enter name" (keyup)='onKeyUp($event)'> 下面是onKeyUp()函数 onKeyUp(event) { let observable = Observable.fromEvent(event.target, 'keyup') .map(value => event.target

javascript – 组合Observables – 等待所有可观察者发射

我有这个代码: let $obs = Rx.Observable.merge( this.obsEnqueue, Rx.Observable.timer(2000) ); 但这并不是我想要的 – 我想要做的就是等到两个事件都触发(来自this.obsEnqueue的事件和来自Rx.Observable.timer()的事件). merge很可能会创建一个新的Observable,它将在

javascript – 使用Angular 4和Http observable进行无限轮询

我正在尝试在我的Http服务中构建一个无限轮询,因为我正在建立一个dashborad之王来调查来自服务器的数据,这里是我的代码几乎正在工作(在我的控制台中,我看到Json正在进行,但它没有’反思我的看法…我想注入我的用户:可观察 const usersURL = 'http://my.super.servor.php' @Inject

javascript – 为什么我的rxjs仅组合最新输出2次?

请考虑以下rxjs@5.5.11代码: { const source1 = Rx.Observable.of(1, 2, 3); const source2 = Rx.Observable.of(4, 5); const combined = Rx.Observable.combineLatest(source1, source2); const subscribe = combined.subscribe(([value1, value2]) => { console

javascript – 在rxjs中实现fromSubscriber

我今天遇到了一个有趣的问题.我正在开发一个我们有文件上传的应用程序,我们想要实现一个进度条.该应用程序使用React / Redux / Redux-Observable编写.我想发送上传进度的动作.这是我为实现它所做的: withProgress(method, url, body = {}, headers = {}) { const progressSubs

javascript – RXJS重试时重置等待间隔

我想用增加的时间间隔触发retrywhen(), socketResponse.retryWhen(attempts => { return attempts.zip(Observable.range(1, 4)).mergeMap(([error, i]) => { console.log(`[socket] Wait ${i} seconds, then retry!`); if (i === 4) { consol

javascript – 一个Observable,多个订阅者,不同的案例,使用rxjs5的不同share()行为

当两个订阅者订阅一个observable时: let s = Observable.interval(1000).take(2).do(x => console.log('hey')); s.subscribe(n => console.log('subscriber 1 = ' + n)); s.subscribe(n => console.log('subscriber 2 = ' + n)); 控制台记

javascript – 使用运算符扩展RxJS Observable类

如何通过应用内置的RxJS运算符来扩展Observable类? 我想做这样的事情: class TruthyObservable extends Observable { constructor(subscriber) { super(subscriber); return this.filter(x => x); } } class TruthyMappedObservable extends TruthyObservable { co

javascript – 一旦Rx.Observable发生错误,ValueChanges就会停止工作

我正在遵循Angular 2应用程序中的一些Rx.Observable教程并使用AutoComplete风格的系统. 当我键入字段时,valueChanges事件从Angular 2 FormControl触发. 这被链接到Observable,它正在针对JSON端点发出HTTP请求. 端点返回404状态的那一刻,valueChanges事件停止工作. 我可以看到我的

javascript – Subject vs AnonymousSubject

RxJS 5中Subject和AnonymousSubject之间有什么区别?我搜索过互联网但没有找到任何关于AnonymousSubject的信息. 我在网上找到了一个例子 Subject.create(observer, observable); 查看rxjs源代码,我看到了这个创建和AnonymousSubject.你能想出一个好用的AnonymousSubject的例子吗?解

javascript – RXJS如何将Observable转换为Observable

我想采取一个Observable< T []>并将其转换为Observable< T>这样来自Observable< T []>的每个数组.然后分解,然后通过Observable< T>分别发射阵列的各个元素. 这样做有标准的运算符吗?我已经四处寻找但没找到任何东西.谢谢. 在指向concatMap / flatMap的方向后,我提出了以下一般解决