RXJS更新主题与苗条商店类似?

RXJS更新主题与苗条商店类似?,rxjs,svelte,subject,Rxjs,Svelte,Subject,有没有办法用当前值的实例更新RXJS主题(如Svelte stores)? 目前我有: const materials = someMethodToGetResults(); const tmp = this.activeFilters.value; tmp.materials = materials; this.activeFilters.next(tmp); 在我看来这不是很优雅。我总是需要更新整个对象,而实际上我只需要更新属性。我认为Svelte解决了这个超级优雅的问题,商店有这样一种更

有没有办法用当前值的实例更新RXJS主题(如Svelte stores)? 目前我有:

const materials = someMethodToGetResults();
const tmp = this.activeFilters.value;
tmp.materials = materials;
this.activeFilters.next(tmp);
在我看来这不是很优雅。我总是需要更新整个对象,而实际上我只需要更新属性。我认为Svelte解决了这个超级优雅的问题,商店有这样一种更新方法:

this.activeFilters.update(current => {
  current.materials = someMethodToGetResults();
  return current;
});
我错过什么了吗?RXJS的学习曲线相当陡峭。
谢谢。

没有像这样的内置主题,但你可以构建自己的主题

导出类StoreSubject扩展了BehaviorSubject{
更新(updateFn){
this.next(updateFn(this.getValue());
}
}
用法:

const store=new StoreSubject(initialValue);
//……以后:
store.update(val=>{
//做点什么
返回值
});

主题不是商店。它只是提供了一种向订阅者推送值的机制。您可以使用RxJS主题作为创建自己的“商店”类的解决方案的一部分,该类具有您所寻求的功能。