jjzjj

Observable

全部标签

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 - Rxjs toPromise 行为不同于可观察的行为

我有一个简单的例子,其中有两个方法创建并返回一个promise。第二个方法buildRedCar()调用第一个方法buildCar(),修改promise返回的值并返回另一个promise。然后,代码调用buildRedCar(),并仅通过控制台记录结果。这在转换为promise时不起作用,但在使用直接可观察对象时它确实起作用。不有效:import*asRxfrom'rx';functionbuildCar():Rx.IPromise{letcar='Car';returnRx.Observable.just(car).toPromise();}functionbuildRedCar(

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 - RiotJS - 如何使用 Observable 模式在子标签之间传递事件?

我不太确定我是否正确理解了可观察对象的工作方式以及如何从挂载的标签中获取引用。我有一个组件。在这个组件中,我们有一个组件和一个组件。目的是避免组件之间的耦合。因此,我希望我的搜索组件在搜索完成(单击按钮)时触发一个事件。此事件应由组件捕获,该组件将根据搜索过滤集合数据。index.html文件使用以下方式加载标签:index.htmlriot.mount(".content","page",null);页面定义如下:page.js组件脚本的简要定义如下:search.jsvarself=this;riot.observable(self);self.filtering=function

javascript - knockout : find out which observable triggerred computed

我有一个包含多个可观察对象的对象。有没有办法在计算中知道哪些可观察的变化,从而知道哪个可观察的触发了计算?提前谢谢你马修 最佳答案 在没有详细说明您要实现的目标的情况下,我会发布此内容,希望它能有所帮助。跟踪更改的一种简单方法是对要跟踪的可观察对象使用.subscribe方法。每次更新observable时,都会触发此方法。self.myValue=ko.observable('initialvalue');self.myValue.subscribe(function(item){alert('myValuehaschangedt

javascript - Rxjs 如何知道可观察到的订阅者有多少?

当我有多个订阅者订阅一个observable时,例如:constmyInterval=Rx.Observable.interval(500);constsubscriptionOne=myInterval.subscribe(val=>doSomething());constsubscriptionTwo=myInterval.subscribe(val=>doSomething());我如何知道有多少订阅者仍然注册到myInterval可观察对象?例如,我需要此信息以防止内存泄漏,以防我忘记取消订阅其中一个? 最佳答案 当使用an

javascript - 如何在 RxJS 中将可变长度数据包流转换为固定长度数据包?

我是RxJS的新手。给定以下流['foo','bar','b','az12','3','4567']我想将其转换为固定大小的数据包(比如3个字节)+余数['foo','ba','rb','az','123','456','7']在现实生活中,它实际上是一个二进制数据缓冲区。我想知道惯用的RxJS方法是什么。我发现的简单方法是:from(['foo','bar','b','az12','3','4567']).pipe(Rx.concatMap(v=>from(v)),Rx.bufferCount(3),Rx.map(v=>v.join(''))).subscribe(v=>consol

javascript - 将 Observables 实现到持久队列库中

目前正在编写一个小型持久队列库,用于将行读取/写入文本文件。这是添加方法,例如:Queue.prototype.add=function(line,cb){getLock(this,err=>{if(err){this.emit('error',err);releaseLock(err,cb);}else{fs.appendFile(this.filepath,line,err=>{err&&this.emit('error',err);releaseLock(err,cb);});}});};我觉得很尴尬的是支持事件发射器和回调(或事件发射器和promise)。换句话说,对于队列中的

javascript - 需要帮助数据与 Observables 的 Angular 绑定(bind)

这是使用Observables绑定(bind)数据的正确方法吗?如果是,我的代码还有什么问题使selectedCourse变量等于未定义?this.golfDataService.getGolfData(id).subscribe(data=>{this.selectedCourse=data.dataconsole.log(data.data)})setTimeout(function(){console.log(this.selectedCourse)},2000);}我希望两个console.log语句返回相同的东西,但只有第一个console.log返回数据,这是一个包含高尔夫