问题标签 [reactive-extensions-js]

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 回答
3188 浏览

c# - 如何在 IObservable 中更新/添加项目动态的?

我有一个可观察的集合,我想继续向其提供对象,即使有人订阅了它,它们也应该到达观察者(这当然是可观察的主要目的)。我该怎么做?

在下面的程序中,订阅发生后,我想再输入 3 个应该到达观察者的数字。我该怎么做呢?

我不想通过实现IObservable<int>和使用Publish方法来实现自己的 Observable 类的路线?有没有其他方法可以实现这一目标?

0 投票
1 回答
85 浏览

system.reactive - Rx Publish() 破坏了 XDocuments 的 IObservable

我有以下产生 IObservable 问题的 Rx 查询,它不能与 Publish() 一起使用,因此随着订阅者数量的增加,内存负载也会增加

有没有更好的方法来创建这样的 Observable?

0 投票
2 回答
528 浏览

system.reactive - 使用一个主题传播完全不同的事件流

我需要通过一个主题代理所有不同的事件流。

我想出了这段代码:

得到输出:

预期输出:

对于bar事件,它就像一个魅力:onNext将被传播,一旦错误引发,onError函数就会被调用并且事件流结束。但是,我无法让它为onComplete.

每当发出完整的通知时,我确实会看到它Rx.Observable.empty()被调用,但这不会导致订阅者onComplete处理程序被调用。相反,它调用它的onNext处理程序。

0 投票
1 回答
522 浏览

c# - 为什么方法 Observable.While 和 Observable.Prune 在 Microsoft.Phone.Reactive 命名空间中?

我注意到 Observable.While 和 Observable.Prune 方法是 Microsoft.Phone.Reactive 命名空间的一部分。只是好奇为什么这些方法应该适用于所有操作系统?

0 投票
3 回答
18853 浏览

rxjs - 发布 observable 的最后一个值

我有一个热门的 observable(在这种情况下是一个主题):

我想创建另一个可观察的,每次进行新订阅时都会立即触发产生的最后一个值。

所以在伪代码中:

这大致是我想要的,它似乎工作。但是,我想必须有一些内置机制来实现相同的

0 投票
1 回答
4290 浏览

javascript - RxJS:可观察对象和单个观察者的递归列表

我在可观察的递归链上遇到了一些麻烦。

我正在使用 RxJS,它目前的版本为 1.0.10621,包含最基本的 Rx 功能,以及用于 jQuery 的 Rx。

让我为我的问题介绍一个示例场景:我正在轮询Twitter 搜索 API(JSON 响应)以获取包含某个关键字的推文/更新。响应还包括一个“refresh_url”,应该使用它来生成后续请求。对该后续请​​求的响应将再次包含新的 refresh_url 等。

Rx.jQuery 允许我将 Twitter 搜索 API 调用变成一个可观察的事件,该事件会产生一个 onNext 然后完成。到目前为止,我尝试的是让 onNext 处理程序记住 refresh_url 并在 onCompleted 处理程序中使用它来为下一个请求生成一个新的 observable 和相应的观察者。这样,一对可观察者 + 观察者对无限期地跟随另一对。

这种方法的问题是:

  1. 后续的 observable/observer 在其前辈还没有被处理掉的时候就已经存活了。

  2. 我必须做很多令人讨厌的簿记才能保持对当前活着的观察者的有效引用,其中实际上可能有两个。(一个在 onCompleted 中,另一个在其生命周期的其他地方)当然,需要取消订阅/处置观察者。簿记的替代方法是通过“仍在运行?”布尔值来实现副作用,正如我在示例中所做的那样。

示例代码:

不要被从请求到推文的双层 observables/observers 所迷惑。我的示例主要关注第一层:从 Twitter 请求数据。如果在解决这个问题时,第二层(将响应转换为推文)可以与第一层合二为一,那就太棒了;但我认为那是完全不同的事情。目前。

Erik Meijer 向我指出了 Expand 运算符(参见下面的示例),并建议将Join 模式作为替代方案。

这应该可以复制粘贴到 LINQPad 中。它假设单例 observables 并产生一个最终的观察者。

所以我的问题是:如何在 RxJS 中做最好的扩展技巧?

编辑:扩展运算符可能可以按照此线程
中所示的方式实现。但是需要生成器(我只有 JS < 1.6)。 不幸的是,RxJS 2.0.20304-beta没有实现 Extend 方法。

0 投票
0 回答
160 浏览

jquery - jqGrid 和 Rx Reactive javascript 扩展

我正在尝试使用以下语法在 jqGrid 中创建 onSelectRow 事件的 Observable:

似乎什么都没有发生。大多数示例都绑定到简单的事件,例如单击文档。我找不到任何复杂的实现示例。这怎么可能实现?

0 投票
1 回答
5594 浏览

javascript - RxJS 多个订阅 Observable.Interval

有没有像 RxJS 一样的解决方案? 是否可以在 Rx 的不同线程上调用订阅者的 OnNexts?

PS 我的第一个天真的方法(在 CoffeeScript 中)显然失败了:

第二次订阅在 35s 间隔内不返回任何内容,依此类推

0 投票
0 回答
758 浏览

visual-studio-2010 - 找不到程序集 - System.Reactive.Debugger

我已经安装了 Visual Studio 2010 Express,然后是 Reactive Extensions 2.0。当我在调试模式下启动我的应用程序时,会抛出以下异常后使用响应式扩展的部分代码:

问题是我找不到这个 dll - System.Reactive.Debugger。

0 投票
0 回答
132 浏览

javascript - rx javascript 周期性事件忽略,直到首先处理

也许我错过了 RX 用于 javascript 库的目的,但我认为它应该很好地处理这种情况。

我想通过 observable 生成周期性事件。订阅者应该接受第一个事件并发出 ajax 请求。处理此事件时的其他事件应被忽略。完成后,观察者应该收到下一个生成的事件。

有什么建议么?非常感谢。