如何解决RxJS去抖动方法多次触发
我试图创建一种方法,等待用户停止写操作,之后只发送一个API请求。
我不知道为什么,但是MyCode()被多次执行。
我的代码:
async functionASDF(event: KeyboardEvent) {
let source = fromEvent(document,'keyup');
source.pipe(debounceTime(250)).subscribe(c =>{
MyCode();
});
}
解决方法
我将通过以下方式进行操作:只需删除该函数,或者如果您在一个类中,请在构造函数内执行此操作。 (但是请确保如果不再需要该流,请取消订阅。否则,会导致内存泄漏。)
let source = fromEvent(document,'keyup');
source.pipe(debounceTime(250)).subscribe(c =>{
MyCode();
});
如果您只需要来自特定Dom元素的键入命令,例如输入,您可以用该元素替换document
。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。