问题标签 [rxjs-lettable-operators]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
519 浏览

rxjs - 使用推荐的运算符导入调用 RxJS 共享时遇到问题

我正在尝试了解导入 rxjs 运算符的最佳实践

似乎我应该share以这种方式导入,但是,以下内容不起作用,因为它说 share 需要 0 个参数。我不太确定如何share正确调用。

用旧方法做不会有问题。但是我似乎读过这不是导入https://www.learnrxjs.io/concepts/operator-imports.html的首选方式

如果我使用推荐的导入方式,我应该如何调用共享?

0 投票
1 回答
359 浏览

angular - RxJS,可租用运算符的建议

我迷失了新的可出租运营商。

我成功尝试使用mergeMap

但我不知道如何导入运算符,例如finally

这个运营商在哪里?是否有规则可以找到您需要的每一个?

0 投票
1 回答
1384 浏览

rxjs5 - 在 RxJS 5.5 中处理 retryWhen 状态码

我有一些代码正在迁移到 RxJS 5.5,它已经工作了。

无论如何,如果这个请求失败并返回 404,按照业务逻辑是可以的。现在,这在 5.5 中几乎是等效的:

在这里,流程被中断,因为在 retryWhen 中,errors 现在是一个主题,我无法像以前一样提取状态。

在最初的调用者中,“e”现在是一个字符串,Http failure response for http://localhost:8888/employees/1/mentor: 404 OK而不是一个对象。显然,putMentor()电话永远不会被打。我只是在学习,所以很可能我还没有完全理解新的可管道操作符。

更新

至少这段代码抛出了一个ErrorObservable,但在调用者端(errorInMentor)它仍然是一个字符串:

0 投票
1 回答
212 浏览

rxjs - mergeAll 与 lettable 运算符(rxjs 5.5+)的工作方式不同?

在 lettable 运算符之前,代码如下所示:

重构使用pipe,我得到一个类型错误,本质上说Observable<Observable<Data>>是不可分配给类型Observable<Data>

但是以下工作很好(我认为不应该混合 lettable 和链式运算符):

mergeAll我应该使用不同的方法吗?我正在使用我以前使用的rxjs/operators那个rxjs/add/operator/mergeAll。我认为这两个实现是等价的。

这是一个错误还是我mergeAll错误地使用了新的?

0 投票
1 回答
104 浏览

rxjs - 集中导入 rxjs lettable 操作符

我习惯使用旧的 rxjs 语法,其中所有方法调用都被链接起来,并且我可以集中导入所有运算符。

在一个新的应用程序中,我现在开始使用 Obsrvable 上的管道方法使用“lettable 运算符”,但我没有成功集中导入这些运算符。

因此,在某个组件中,我使用了 map 和 mergeMap,并像这样导入它们:

例如,如果我从组件文件中删除这些导入并将它们放入我的 main.ts 中,编译将失败,因为找不到这些方法......这在 lettable 运算符之前曾经很简单。我错过了什么?

0 投票
1 回答
122 浏览

rxjs - rxjs - 在 Observables 中迭代

每次生成新值时,我都需要将其与所有以前的值进行比较,并且只有在满足条件时才会将其添加到流中。

如何使用 observables 做到这一点?

0 投票
1 回答
505 浏览

rxjs - RXJS 5 - 当所有源都发出时,从可观察的数组中发出单个复合值

我正在使用 observable 的pipe方法组合多个 observables,并且我想在数组中的所有 observables 发出时发出最终的复合值。

我能够做到这一点forkJoin

...但我正在寻找一种方法来在pipe链中完成它而不必嵌套subscribe调用。

zip运算符有点像在球场上,但它似乎不适用于可观察的数组。是否有一个forkJoin可以使用并且可以与 一起使用的 lettable 运算符pipe

0 投票
1 回答
1176 浏览

rxjs - 如何从流 RxJS 中记住以前的值

我有 2 个像这样的 observables:

我想从 Tap 部分中的 $loaded 流中访问isLoadedvar 我该怎么做?这是更好的方法吗?

0 投票
1 回答
1189 浏览

angular - Angular v6 管道(map())问题

如果有人能对此有所了解,我将不胜感激。我已经做了好几天了。

这是我的身份验证服务中的两个功能。检索有效 jwt 的登录函数,然后是获取刷新的 jwt 的刷新函数。

登录

刷新

我创建了一个单独的箭头函数来处理两者的映射。

}

我想要这个,这样我就不会重复代码。登录功能完美运行,但刷新令牌返回此错误:

我已经从 'rxjs/operators' 导入了地图

0 投票
1 回答
43 浏览

typescript - 将失败的 Observable 转换为好的 Observable

我调用了一个返回 observable 的 HTTP 服务(它是第三方库的一部分,因此我无法更改其内部代码),并且它在订阅我想处理的用例时抛出错误小路。

我有这样的事情:

我的服务等级:

我的消费者:

因此,对于当前的代码示例,我要做的是,对于状态码为 409 的情况,使订阅成功。