首页 > 解决方案 > 如何将重播主题数组存储在角度的单个变量中?

问题描述

我想将多个重播主题存储在一个数组中。

我的代码

public filteredSearch: ReplaySubject<any[]> = new ReplaySubject(1);
this.filteredSearch[id].next(filter(somedata));

它抛出错误无法读取未定义的属性“下一个”我在这里缺少什么?

在角度 7 上测试

标签: angulartypescriptangular7

解决方案


filteredSearch不是数组类型,而是 ReplaySubject 类型。所以therefor ReplaySubject[id]是 undefined 和 undefined 没有一个方法叫做next.

我认为您想要与此类似的东西:

public filteredSearch: Array<ReplaySubject<any>> = new Array<ReplaySubject<any>>();
this.filteredSearch.push(new ReplaySubject<any>(1));
this.filteredSearch[id].next(filter(somedata));

推荐阅读