//防抖
debounce(fn, time = 1000) {
let timer = null;
return function (...args) {
if (timer) clearTimeout(timer);
timer = setTimeout(() => {
fn.apply(this, args);
}, time);
};
},
// 输入变化处理函数
async inputChange(value) {
if (!this.debouncedInputChange) {
this.debouncedInputChange = this.debounce(this.handleInputChange, 1000);
}
this.debouncedInputChange(value);
},
// 实际处理输入变化的函数
async handleInputChange(value) {
const res = await baseOptionApi.getDetailByProcessTaskIdLike({ processTaskIdLike: value });
let myrange = [];
res.data.data.forEach((val, index) => {
myrange.push({
...val, // 保留原始数据的所有字段
value: val.processTaskId, // 选项id
text: val.processTaskId + '-' + val.processName // 选项名称
});
});
this.processIdOption = myrange;
},
前端-防抖代码
大嘴史努比2024-08-03 22:30
相关推荐
柳杉4 分钟前
Codex + 可视化大屏工作流实践:15 个行业场景的设计产出合集@#¥&~是乱码鱼啦7 分钟前
ArkWeb开发手记05|SPA单页H5适配、自定义历史栈与全局状态同步peter67688 分钟前
vue学习小结七仔啊13 分钟前
数字孪生大屏设计器知野小兔15 分钟前
JavaScript 数组方法大全(超详细整理)火眼金睛记单词19 分钟前
零基础成人重拾英语:第一个月的30天行动地图ljt272496066134 分钟前
Vue笔记(十二)--mitt用户0333074139513 小时前
TypeScript using 与 AsyncDisposableStack:在真实服务端代码中协调多资源清理daisychey13 小时前
用 Playwright 做多平台内容分发,我踩过的 8 个坑IT_陈寒14 小时前
为什么你应该学习JavaScript?