问题标签 [rx-scala]

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

scala.js - Outwatch(或压缩)中的排序(并行)Observables

我应该如何在Outwatch中呈现Observable 列表?如果我需要一个 Observable 怎么办:我应该如何将它们作为应用程序进行排序/压缩?当我使用 applicative(?) 操作 'zip' 将 List[Observable] 转换为 Observable[List] 时,它是否会呈现?(即当我不需要链接 Observables 时)

下面有一个答案

只有在用户输入每个输入后才会呈现任何一个孩子。一旦用户输入任何第一个输入,我如何渲染每个孩子,而不必全部输入?

完整代码如下

当列表长度 > 1 时没有任何显示,但对于单元素列表则显示。我是一个 html/scala-js 和 rx noob。并且可能会误解 Observables 可能(或可能不是)是应用函子。我在寻找“序列”而不是“拉链”。

完整代码截图

完整代码截图

0 投票
1 回答
407 浏览

scala - 在 Scala 中将 Rx-Observables 转换为 Twitter 期货

我想以最被动的方式实现以下功能。我需要这些来实现上述类型之间自动转换的双射。

我在相关主题上看到了这篇文章,但我无法让它发挥作用。

0 投票
1 回答
145 浏览

scala - 从 Futures/Iterables 测试 rx-observables

我有:

我可以通过测试测试输入列表是否确实传递给了 observable:

哪里materializeValues是:

现在,如果我从未来创建一个 observable,由于测试超时,我似乎无法materializeValues用于测试。所以如果我有:

它超时并且没有通过测试。物化这两个可观察的过程有什么不同,导致我无法阻止它?

另外,测试可观察对象的惯用方式是什么?有什么方法可以不打电话toBlocking吗?

0 投票
0 回答
41 浏览

android - 为什么在 Android 中使用 RxScala 订阅 Flowable 时,Scala 编译器不推断参数类型?

我正在尝试开始使用 RxJava2、RxScala 和 Android。我在网上找到了一个小例子,我试图将其翻译成 Scala。但是 Scala 编译器无法确定这里的类型:

我也不确定这里需要什么类型。一个Flowable[_ <: Any]]?我怎样才能让它工作?

这是代码:

0 投票
1 回答
48 浏览

android - RxScala/Java - 为什么我的进度条没有出现?

我有一个简单的应用程序SearchView,用户可以查询并根据我显示/隐藏一些视图小部件的状态。我很难找出为什么ProgressBar永远不可见。有人能说为什么加载指示器永远不会出现吗?

这是代码:

主持人:

带有实际渲染的 Activity:

这里我模拟一个网络请求:

0 投票
1 回答
113 浏览

scala - 调用 .take() 后 RxScala doOnCompleted 未触发

我是 RxScala Observables 的新手,在使用 take(n) 和 doOnCompleted() 的组合时遇到了奇怪的行为。

下面我有一个测试示例,我认为第一个订阅是正确的(在开始时使用 take(2))并输出订阅、下一个、完成和取消订阅方法的所有日志,但是第二个测试(take(2 ) 在 doOnComplete) 之后永远不会到达 doOnCompleted 方法。

上述测试的电流输出如下。

为什么 doOnCompleted() 在第二个示例中没有被解雇?

0 投票
1 回答
23 浏览

rx-java - 如何使用 RxScala/RxJava 从单个计算步骤构建 Observable?

我目前有以下代码:

但现在我注意到我实际上想“发布”一组中间状态:

有没有一种简单的方法可以实现这一目标?尽管我将其描述为 3 种状态转换,但实际上我可能会经历更多或更少的转换。我希望从 Future 到 Observable 的更改意味着对我当前的“命令式”代码的更改最少。

另外,我希望这些“事件”能够实时发布,而不仅仅是从方法返回时。

0 投票
1 回答
42 浏览

rx-java - 初始化后如何更改 rxjava/rxscala 运算符(.debounce)参数

我在 rxjava/rxscala 中使用 .debounce 运算符来捕获在给定时间段内发生的一些事件,但希望使给定时间段可控。.debounce 使用的时间段作为参数给出。

理想情况下,我希望能够向 .debounce 运算符传递一个 observable,它使用 的最新值来确定去抖使用的时间段。.debounce(timePeriodController, TimeUnit.Seconds) 之类的东西。

我已经看到 .debounce 可以采用 DebounceSelector,并认为这可能是解决方案。

我还看到 .flatMap 在这种情况下可以以非常复杂的方式使用。

编辑:在 RxJS 中,.debounce 似乎可以使用 durationSelector,但目前在 RxJava 中这是不可能的。我想知道是否有解决方法?

我会很感激任何帮助。干杯! 亚当

0 投票
1 回答
45 浏览

scala - 如何在 scala 中创建一个可观察的演员类

我试图让我的演员类可观察(用 Observable[T] 扩展演员)。但是,有一条错误消息表明我必须实现 asJavaObserver 值,但可观察特征中没有 asJavaObserver。

0 投票
1 回答
43 浏览

scala - 合并后如何保留两个可观察对象发出的项目的顺序?

我遇到了令我惊讶的 Scala Observables 行为。考虑下面我的例子:

该代码演示了从两个可观察对象发射元素。其中一个以“慢”的方式(每 7 秒)发射其元素,另一个以“快速”的方式(每 3 秒)发射。为了这个问题,假设我们想使用map函数定义这些可观察对象,并从上面看到的适当映射数字interval(而不是另一种可能的方法,即从两个可观察对象以相同的速率发射项目,然后filter根据需要退出)。

代码的输出对我来说似乎违反直觉:

有问题的部分是当 observable 在[FAST]observable 发出9之前[SLOW]发出7。我希望在第 7 秒发出的内容之前发出,因为在第 9 秒发出的内容之前79

我应该如何修改代码以实现预期的行为?我查看了 RxScala 文档并开始搜索不同的interval函数和Scheduler类等主题,但我不确定它是否是搜索答案的正确位置。