问题标签 [combinelatest]

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

loops - Observables 与在 for 循环中生成的 combineLatest Observables 相结合

我正在尝试组合 observables,其中每个 observables 在 for 循环中获取输入。我的问题是,如果我知道数组会提前循环,我会知道如何在没有.for loopfor loopcombineLatest

如果我不知道尺寸,有谁知道我会怎么做sections

提前谢谢了!

0 投票
1 回答
1521 浏览

swift - Swift Combine:一个发布者消费另一个发布者,如何让两个流都退出

我想要一些帮助来理解为什么我的发布者没有通过 combineLatest 运算符发出元素。我有一个发布视频帧的发布者,以及另一个使用这些视频帧并从这些帧中提取人脸的发布者。我现在正在尝试使用 combineLatest 将原始视频帧和转换后的输出合并为一个(我正在使用一些自定义发布者来提取视频帧并转换帧):

但是,我没有从 combineLatest 中获得任何活动。经过一些调试,我认为问题在于 videoPublisher 中的所有 videoFrames 都已发布,然后才能成功通过 faceDetectionPublisher。如果我将打印语句附加到 videoPublisher 和 faceDetectionPublisher 的末尾,我可以看到前者的输出,但看不到后者的输出。我已经阅读了组合和其他技术(例如多播),但还没有找到可行的解决方案。我喜欢任何关于如何更好地理解框架的综合专业知识或指导!

0 投票
1 回答
259 浏览

angular - 不支持管道运算符:Angular [Typescript] - rxjs - combineLatest

带有问题的代码

错误

'OperatorFunction <未知,[未知,AccountingTransactionFlatInterface [],GeneralLedgerAccountInterface []]>'类型上不存在属性'管道'。

0 投票
1 回答
186 浏览

swift - WWDC 2019“Combine in Practice”代码示例中的错误 CombineLatest?

我尝试遵循 WWDC 2019 的“ Combine in Practice ”演讲的代码片段(从 26:00 分钟开始)或查看幻灯片179 ff。但它不会编译并且查看 API 某些部分对我来说没有意义(例如,CombineLatest.init(A, B)使用 type 的第三个参数调用closure。我试图调整示例以便它们编译。

问题第 1/2 部分:如果我误解了 WWDC 2019 代码片段,有人可以帮助我并告诉我吗?

第一个代码片段(幻灯片 179)

我只能让这个片段至少返回给我Publisher fromCombineLatest`

  • Publishers枚举添加到CombineLatest
  • 删除尾随闭包
  • 添加.PublisherPublished<String>

第二个代码片段(幻灯片 185)

我可以在以下情况下编译此代码段:

  • 执行第一个片段列出的所有步骤
  • Publishers.在前面添加Map
  • 移动<>到正确的位置
  • 显式返回Publishers.Map并使用正确的参数upstream:

或者当包括.map {}幻灯片时:

  • 通过将 var 类型包装在另一个Publishers.Map<..., String?>

问题第 2/2 部分:执行此操作的快捷方式是什么?例如,通过使用这样的东西(不编译):

0 投票
1 回答
130 浏览

swift - 无法在 RxSwift 的 combineLatest 中使用类型为“(@escaping(_)-> _)”的参数列表调用“过滤器”

我试图从我试图合并的两个流中过滤掉一些东西。我要尝试的两个值都属于同一类型,因此我似乎无法理解为什么会遇到此问题。

//使用某种内部方式来访问电子邮件

0 投票
1 回答
1085 浏览

swift - 未触发 Combine 中的 CombineLatest

这是我的简单CombineLatest测试。我在onAppear函数中调用这个方法。但是,我print(a,b)的没有被调用。我应该如何修复我的代码以运行print(a, b)

0 投票
1 回答
859 浏览

flutter - Rxdart combinelaststream 功能不起作用

我将合并两个流。但它不起作用。我的错误是什么?

我的构建功能是;

获取所有数据库帐户流块是

删除数据库帐户块现为

组合器结果类是

它的我在 android studio 上运行日志..

I/flutter (28323):账户获取

我/颤振(28323):hasData:假

我/颤振(28323):hasData:假

I/flutter (28323):帐户获取

流工作,但我没有得到 AccountsCombiner 结果数据。

这种构建方法有效,但我不想使用它......

0 投票
1 回答
374 浏览

angular - combineLatest 仅在第一次发出数据

我的代码块ngOnInit如下:

想法如下:
当列定义由 确定更改时questionsList,我希望重新渲染表格。我打算通过再次获取文件来做到这一点(不要担心重复调用 http。当它工作时,我将用更有效的东西替换逻辑)

但是,即使一直在BehaviorSubject更改值(要在表中显示的列),结果也不会刷新。基本上,“fired”在页面第一次加载后不会运行。

为什么会这样?是因为http调用已经完成而questionsList没有吗?我的想法是combineLatest只要其中一个可观察对象发出一些东西就会触发?

0 投票
1 回答
61 浏览

angular - 在一个组件上管理多个 RxJs Observables

下面是我的应用程序中一个组件的代码片段,我在其中订阅了多个可观察对象并在分别获取值后加载数据 [一个 api 调用]。

在这种情况下,CombineLatest 对我有用,但是 loadData 被多次调用。我相信发生这种情况是因为可观察对象在更新后会发出值。服务中 [studentId、teacherId、resultId、reportId、yearId] 的初始值设置为 0,以适应 combineLatest。

在收到所有 5 个值 [不是 0 的初始值] 后,有什么方法可以调用 LoadData 方法 [api 调用]?像 onComplete 之类的东西?

0 投票
1 回答
80 浏览

angular - Angular 8:分解 HTTP 请求而不是一次性发送

嗨 StackOverflow 社区成员,

我正在研究 Angular 8。我有一个关于如何分解我的 HTTP 请求的问题,而不是一次发送 1000 个请求,我希望每 50 个请求一次发送一次。我想不出任何方法来实现这一点。下面是我的代码片段:

上面的代码会一次性触发所有请求,想象一下如果我有 1000 个产品在products数组中,这意味着它会循环 1000 次,并且会向服务器发送 1000 个请求并导致性能问题。有没有办法限制客户端不要一次性发送所有请求?

我试过combineLatest了,结果不是我想要的。我想尝试concatMap,但这意味着它会逐个发送 HTTP 请求,并且需要很长时间来处理所有产品。有什么建议或想法吗?