我想合并来自多个可观测对象的最新emits 值,所以现在我使用的是.withLatestFrom.只是,它将数据嵌套在嵌套数组中,而不是将数据推入新的数组值.下面是示例代码.

有没有关于如何使用.withLatestFrom个元素来检索多个可观测emits 的 idea ?

source0
  .withLatestFrom(source1)
  .withLatestFrom(source2)
  .withLatestFrom(source3)
  .map((data) => { console.log(data) });

推荐答案

withLatestFrom支持多个观察点:

.withLatestFrom(source1, source2, source3)
.map((data) => { console.log(data) });

-> [val, value1, value2, value3]

它还支持函数作为最后一个参数,因此可以获取数组以外的值:

observable$
    .withLatestFrom(source1, source2, (val, one, two) => {
        return {val: val, one: one, two: two};
     });

Angular相关问答推荐

文件阅读器未正确给出某些CSV文件的结果

无法绑定到ngIf,因为它不是dis angular 17的已知属性

为什么当我在父组件中设置数组元素时,Angular重新创建子组件而不是更新它?

PrimeNG侧栏清除primeNG消息.为什么?

Angular 空变量使用组件之间的共享服务

Angular 升级到v16和Ant设计错误:';nzComponentParams';类型';ModalOptions';中不存在

TransLoco合并本地和服务器端转换对象

如果我只在组件中使用某个主题,是否需要取消订阅该主题?

Angular 组件存储,为什么我的效果可以';在http错误后不会被触发?

出错后可观察到的重用

使用 TAB 键时如何聚焦mat-select组件?

错误:在工作区外运行 Angular CLI 时,此命令不可用

如何重置表单中的特定字段?

Angular 2.0 中 $scope 的替代品

如何在angular material中使用输入类型文件

找不到模块'@angular/compiler'

无法绑定到matMenuTriggerFor,因为它不是 button的已知属性

使用 Angular 2 新路由更改页面标题

*ngIf 带有多个异步管道变量

Angular CLI 输出 - 如何分析Bundle 文件