问题标签 [rxjs5]

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 投票
1 回答
94 浏览

javascript - 如何将 RxJS5 运算符链接到一个新的运算符中?

根据操作员创建指南,我尝试将一些我曾经使用过的操作员链接到另一个操作员,但没有任何成功。

这个函数只是开始一个间隔,并且会被跳过,直到 actionName 被发出。

但是当我尝试使用我的运营商时

它抛出一个错误

但是,如果我在我的新操作员之外进行间隔调用,它会起作用吗?!

有什么解决办法吗?:)

0 投票
2 回答
1862 浏览

angular - rxjs with angular2: into component class 如何将输入字段数据更改转换为rxjs流

据说我们可以使用 rxjs 将任何内容转换为流,这里我想将来自输入字段的数据转换为流,然后订阅它,angular2 中有使用 valueChanges 事件的方法

但是当我尝试像这样在组件类中创建流时

无法识别创建,我如何在 rxjs 中执行此操作,因为值更改为输入字段,它与 angular2 形式有关,还有什么有用的功能为此创建流

0 投票
3 回答
184 浏览

javascript - RXJS5 与 Promise.all

是否有一个 Promise.all 的等价物?

无法从文档中将其拼凑在一起,各种文章都建议使用 ForkJoin,但无法使其正常工作...

可能只是切换回诺言的理智世界。

0 投票
1 回答
24485 浏览

javascript - Rxjs 主题 next() 在 complete() 之后

我有与Subject()做分页连接的服务。我next(newData)用来传递给主题,这让事情保持活力,现在我需要complete()在每个 ajax 调用上使用并将它传递给主题。但是在做了一个之后,complete()我开始出错了。

我想知道,如果已经触发了一次,我们还可以通过Subjectobservables吗?next(newData)completed()

0 投票
1 回答
30 浏览

rxjs5 - 指示数组在某些索引处包含某些类型?

我正在使用一个使用 RxJS Observables 的 Typescript Angular2 站点。我正在获取一段用户数据并访问两个不同的 API 端点。我.forkJoin像这样把他们在一起

虽然这在技术上可行,但我觉得这有点笨拙。特别是如果我加入越来越多的请求或可变数量的请求。没有说那results[0]是 TypeA 或那1是 TypeB。

是否有更流畅的输入方式results或替代方法forkJoin将组合请求但保持它们的响应不同(从而更明确地输入)?

0 投票
2 回答
27413 浏览

angular - Angular2:如何正确订阅服务和组件内的 Http.post 可观察对象?

Http对于 JWT 身份验证,我现在使用与 Observables 一起工作的新模块发出发布请求以获取令牌。

我有一个Login显示表单的简单组件:

我有一项Auth服务提出请求:

效果很好,但现在我想在我的组件中显示错误消息,所以我需要在 2 个地方订阅(Auth用于管理成功和Login管理错误)。

我使用share运算符实现了它:

在组件内部:

它有效,但我觉得做错了..我只是将我们用 angular1 做的方式转换了promises,你有没有更好的方法来实现它?

0 投票
1 回答
107 浏览

javascript - parstInt 和 isNaN 函数的参数错误

为什么当我在 parstInt 和 isNaN 函数中传递参数时出现错误,说 void 类型的参数不可分配给类型字符串我该如何解决这个问题

0 投票
1 回答
4313 浏览

javascript - 没有任何加载器的浏览器中的 ReactiveX/RxJS 5?

如何在不使用任何加载器的旧 javascript 应用程序中加载 RxJS?
对于 RxJS 4.x,我可以简单地这样做:

RxJS 5 怎么样?他们的文档假设您正在使用某种加载器来处理所有事情,但是对于没有加载器的遗留应用程序的中间步骤,只是在构建时打包的文件?

他们还提到了通过仅包含您用于“大小敏感捆绑”的功能来创建自己的捆绑包的能力,这听起来很棒。
所以我应该只创建一个入口点文件,然后将它添加到我的构建过程中,并使用某种工具(browserify/gluejs/webmake)将所有内容构建到一个文件中,就像在 RxJS4 中一样,它将暴露 Rx(或简单的 Observable)作为全局变量?,例如:

0 投票
5 回答
15140 浏览

filter - RxJs Observable:如果为空/过滤则执行函数

我有一个 Observable 可以监听来自文本框的一些用户输入。如果观察到的字符串长度 >=3 ( filter),它会执行一些 HTTP 调用 ( switchMap)。

现在我想以某种方式检测用户输入是否已被过滤。原因:

  • 如果 HTTP 调用已经完成,它应该会显示结果。

  • 如果用户输入被过滤(== 无效),它应该清除结果。

这是我想要的代码(请参阅:)ifFiltered

filter我知道,对于这个简单的示例,我可以将该逻辑放在函数中。但是如果我有 10 个不同的过滤器呢?

我错过了满足我需求的任何方法吗?

提前致谢!

0 投票
5 回答
15046 浏览

rxjs - 在 RxJS 5.0 中找不到“combineLatest”

以下代码导致我Observable.combineLatest is not a function使用 RxJS 5.0:

所有其他 Observable 都能够被解析,唯一没有被解析的函数是 my combineLatest. 我observables/combineLatest只是为了尝试无济于事。

我正在使用webpackand编译所有内容babel,并且代码能够解析scan, range, interval,map和其他一些问题。即使flatMap使用import 'rxjs/add/operator/mergeMap';工作。

但不是combineLatest

因此,如果有人有一个工作示例,将不胜感激。除了基本相同的单元测试(可观察的数组和函数)之外,在文档中找不到其他任何内容。

2018 年 4 月 4 日更新

在 RxJs 5.5 上使用以下内容:

前进(RxJs 6)使用以下内容: