我正在使用ngxs建立一个application作为我的州经理。我的应用程序显示分页的消息源,但所有消息都处于状态,在我的情况下大约为1000。我有a selector对帖子进行分页,但是当应用程序初始加载时,我有一个很好的性能消耗,因为帖子进来了。
我尝试过像这样的激进派:
this.currentFeedSettings = this
.store
.select(CurrentFeedSettingState)
.pipe(
throttleTime(10000),
);
但是有些消息几乎立即显示,但10秒后不会显示。我做错了吗?
答案 0 :(得分:3)
我会推荐debounce运营商。
去抖动会延迟源Observable发出的值,但如果新值到达源Observable,则会丢弃先前待处理的延迟发射。此运算符跟踪源Observable的最新值,并通过调用durationSelector函数生成持续时间Observable。
在您的代码中,看起来像:
this.store
.select(CurrentFeedSettingState)
.pipe(debounceTime(100))
.subscribe((res) => { ... });