加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Rxjs结合了2个Observable,Angular 2

发布时间:2020-12-17 17:02:31 所属栏目:安全 来源:网络整理
导读:我有2个observable,两个http调用: itemList$:Observableany[];newItem$:Observableany[];ngOnInit(){ itemList$= this.http.getList(...some url...) // returns array of many items}createNewItem(){ newItem$= this.http.createNewItem(...some url...)
我有2个observable,两个http调用:

itemList$:Observable<any[]>;
newItem$:Observable<any[]>;

ngOnInit(){
  itemList$= this.http.getList(...some url...) // returns array of many items
}

createNewItem(){
  newItem$= this.http.createNewItem(...some url...) //returns array of one item
}

我想从其他地方调用’createNewItem()’函数,我希望将结果与当前的itemList $observable结果合并,形成一个项目数组.

在html中我有一个监听itemList $的异步管道:

<div *ngFor="let item of itemList$| async">{{item.name}}</div>

如何将newItem $合并到itemList $并让异步管道显示合并结果?

解决方法

您可以使用Observable.merge(我有RxJS版本5.0.1)

Observable.merge(newItem$,itemList$)
          .subscribe(response => {
              // Perform your action
          });

https://github.com/Reactive-Extensions/RxJS/blob/master/doc/api/core/operators/merge.md

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读