element-plus
Version:
A Component Library for Vue 3
22 lines (20 loc) • 412 B
JavaScript
import { cAF, rAF } from "./raf.mjs";
//#region ../../packages/utils/throttleByRaf.ts
function throttleByRaf(cb) {
let timer = 0;
const throttle = (...args) => {
if (timer) cAF(timer);
timer = rAF(() => {
cb(...args);
timer = 0;
});
};
throttle.cancel = () => {
cAF(timer);
timer = 0;
};
return throttle;
}
//#endregion
export { throttleByRaf };
//# sourceMappingURL=throttleByRaf.mjs.map