UNPKG

vite-uni-dev-tool

Version:

vite-uni-dev-tool, debug, uni-app, 一处编写,到处调试

47 lines (46 loc) 1.63 kB
function C(c, s, a = {}) { let l = null, n = null, e = null, r, u = null; const { leading: m = !0, trailing: f = !0 } = a, i = (t) => { const o = n, T = e; return n = e = null, u = t, r = c.apply(T, o), r; }, g = (t) => (u = t, l = null, m ? i(t) : void 0), v = (t) => (l = null, n && f ? i(t) : (n = e = null, r)), y = (t) => { if (u === null) return s; const o = t - u; return s - o; }, d = (t) => { if (u === null) return !0; const o = t - u; return o >= s || o < 0; }, h = () => { const t = Date.now(); if (d(t)) return v(t); l = setTimeout(h, y(t)); }, p = function(...t) { const o = Date.now(), T = d(o); return n = t, e = this, T && l === null ? g(o) : (l === null && (l = setTimeout(h, s)), r); }; return p.cancel = () => { l !== null && clearTimeout(l), u = null, l = n = e = null; }, p; } function D(c, s, a = !1) { let l = null, n = null, e = null, r, u = null; const m = () => { const i = u !== null ? Date.now() - u : 0; i < s && i >= 0 ? l = setTimeout(m, s - i) : (l = null, a || n !== null && e !== null && (r = c.apply(e, n), n = e = null)); }, f = function(...i) { n = i, e = this, u = Date.now(); const g = a && l === null; return l || (l = setTimeout(m, s)), g && (r = c.apply(this, i), n = e = null), r; }; return f.cancel = () => { l !== null && (clearTimeout(l), l = null, n = e = null, u = null); }, f.flush = () => (l !== null && (clearTimeout(l), l = null, a || n !== null && e !== null && (r = c.apply(e, n), n = e = null)), r), f; } export { D as debounce, C as throttle };