1. debounce.js

import { customRef } from 'vue';
export function debounceRef(value, delay = 1000) {
let timer;
return customRef((track, trigger) => {
return {
get() {
// 依赖收集
track();
return value;
},
set(val) {
clearTimeout(timer);
timer = setTimeout(() => {
// 派发更新
trigger();
value = val;
}, delay);
},
};
});
}
2. 使用
<input v-model="testVal" type="text" />
<p>{{ testVal }}</p>
  import { debounceRef } from './components/debounce';
  const testVal = debounceRef('');

最新文章

  1. 第四篇 基于.net搭建热插拔式web框架(RazorEngine实现)
  2. Linux--02软件安装、防火墙设置
  3. Bootstrap源码分析之transition、affix
  4. css3中变形与动画(一)
  5. iOS多线程初见
  6. 【转】java内部类的作用
  7. unity3d游戏开发(一)——圈圈叉叉
  8. 初学c++
  9. jfreechart环形图完美实现
  10. 【Java先进】Lock、通过使用线程池
  11. 怎样的 Hash 算法能对抗硬件破解
  12. 怎么解决mysql 执行SQL过长问题------------?
  13. delphi DBGRID 刷新定位问题 [问题点数:0分]
  14. B树,B+树比较
  15. 《JAVA与模式》之中介者模式(转载)
  16. service citrix xcenserver health check service (xenserver healthcheck) failed to start verfy that you have sufficient privileges to srart system services
  17. JavaScript 对象属性
  18. 购物车功能:使用jQuery实现购物车全选反选,单选,商品增删,小计等功能
  19. Authentication Overview
  20. 【离线】【递推】【multiset】 Codeforces Round #401 (Div. 2) C. Alyona and Spreadsheet

热门文章

  1. hyperf 配置 https 访问
  2. ATM+购物车(思路流程)
  3. 【转载】SQL SERVER 中单字节和双字节互转自定义函数(全角半角转换)
  4. vite+ts+vue3+router4+Pinia+ElmPlus+axios+mock项目基本配置
  5. 使用IntelliJ IDEA打开一个项目步骤
  6. 关系数据库——MySQL
  7. Java基础篇——IO流
  8. Java学习记录:2022年1月13日(其二)
  9. 最好用的在线图片压缩工具——TinyPNG
  10. SQL分类-DDL_操作数据库_创建&amp;查询