throttle.js 386 B

123456789101112131415
  1. export const throttle = {
  2. inserted(el, binding) {
  3. let timer = null;
  4. const delay = binding.arg || 500; // 默认 500ms
  5. el.addEventListener('click', () => {
  6. if (timer) return;
  7. timer = setTimeout(() => {
  8. binding.value(); // 执行绑定的函数
  9. timer = null;
  10. }, delay);
  11. });
  12. }
  13. };