必须有一个标准的方法来解决这个问题,但我还没有找到任何东西。我可能没有正确表达我的搜索。
我有一个搜索输入字段,作为一种好的做法,switchmap
当用户继续输入时,我使用运算符取消以前的 http 请求。
我以 ngxs 文档中的示例为基础:
this.actions$
.pipe(
ofActionDispatched(SomeAction),
debounceTime(2000),
distinctUntilChanged(),
untilDestroyed(this),
switchMap(() => {
return this.store.dispatch(new SomeOtherAction());
})
).subscribe(() => {
});
SomeAction
每次用户在输入字段中键入内容并保存在商店中时都会调度(这就是为什么SomeOtherAction
没有构造函数参数)。
如果没有这个空的订阅块,有没有更好的方法来做到这一点?这看起来像一个反模式。