将元素推送到数组的BehavioSubject。打字稿角度

时间:2020-03-02 14:35:39

标签: angular typescript behaviorsubject

我有一个数组类型的Subject,并且我有2个更新主题数据的组件和一个订阅它的组件。我的想法是,当我从2个组件中的任何一个更新主题时,该数组将被覆盖。我需要能够从这两个组件中将数据推送到主题,并具有包含两个源信息的组合数组。

我尝试过:

 actualizarArchivos(archivos:IArchivo[]){
    this.archivos.next([...this.archivos.getValue(), ...archivos]);
  }

但是当我推3个元素时,它们被复制了,而我得到了6个元素的数组。有谁知道有没有办法做到这一点?

1 个答案:

答案 0 :(得分:0)

正如@Andrei的评论所建议的。仅将新存档传递给这样的方法:

this.archivos.next([...this.archivos.getValue(), archive]);

解决问题。