javascript - 如何暂停 addEventListener 半秒?
问题描述
我有这个代码(工作正常):
chiffreId.addEventListener('input', function () {
fetch(url).then((response) =>
response.json().then(data => {
this.value = String(data.montant).replace(/\./, ','), //replace . with , for EU
soldeId.innerHTML = data.solde;
})
);
});
如何暂停fetch
代码的执行半秒钟?
解决方案
在超时时调用fetch
唯一,并清除超时并在每次事件触发时启动一个新的。
您还可以通过返回Promise来避免一级.then
嵌套:.json
let timeoutId;
chiffreId.addEventListener('input', function () {
clearTimeout(timeoutId);
timeoutId = setTimeout(() => {
fetch(url)
.then(response => response.json())
.then(data => {
this.value = String(data.montant).replace(/\./, ','); //replace . with , for EU
soldeId.innerHTML = data.solde
});
}, 500);
})
推荐阅读
- sql - 交叉连接表以查看一个表中的哪些合作伙伴有另一个表中的报告
- python - 在测试和训练数据集中使用基于时间的拆分来拆分数据
- python - 在辅助监视器中打开 Python CEF 应用程序
- python - 如何解释和调查不平衡数据中的完美准确度、精确度、召回率、F1 和 AUC(我不信任)
- elasticsearch - 用于缓存和搜索产品的弹性搜索?
- angular - ng build --prod 时使用 ngx-hm-carousel 模块出错
- c# - Sitefinity 404 多语言页面
- ios - Obj-C NSMutableArray 返回 nil
- python - GridSearchCV.best_score 与 cross_val_score 不同(GridSearchCV.best_estimator_)
- ios - 计算字符串的标准差