UNPKG

@vuux/video

Version:

Vue Nuxt 视频播放器

37 lines (36 loc) 1.02 kB
import { onMounted as v, onUnmounted as c } from "vue"; import { Utils as d } from "@vuux/utils"; const w = (n, o) => { const l = (i) => { window.clearTimeout(o.clearTime), o.show = i; }, s = (i = 500) => { o.clearTime = window.setTimeout(() => { o.show = ""; }, i); }; let e = null; const m = () => { o.control = !0, e && (clearTimeout(e), e = null); }, r = () => { o.butStatus === "pause" && (e && clearTimeout(e), e = window.setTimeout(() => { o.control = !1; }, 5e3)); }, u = () => { r(); }, t = d.debounce(() => { m(), r(); }, 30); return v(() => { n.value && (n.value.addEventListener("mousemove", t), n.value.addEventListener("mouseleave", u)); }), c(() => { n.value && (n.value.removeEventListener("mousemove", t), n.value.removeEventListener("mouseleave", u)), e && (clearTimeout(e), e = null); }), { onMouseEnter: l, onMouseLeave: s, handleMouseMove: t, handleMouseLeave: u }; }; export { w as useControllerUI };