UNPKG

mine-h5-ui

Version:

一款轻量级、模块化基于 Vue3.x 的 H5 前端 UI 组件库 👍

29 lines (28 loc) 848 B
import { useTemplateRef as d, ref as u, onMounted as m } from "vue"; import { useMoveHandle as p } from "../MeComposable/useMoveHandle/index.js"; const h = () => { const c = d("swiperEventNode"), r = u(), n = u(0), a = u(0), s = u(!1); let v = 0, l = 0, o = 0; const i = { start({ x: e }) { v = a.value, s.value = !1, l = e; }, move({ x: e }) { s.value = !1; const t = v + e - l; a.value = t < -n.value ? -n.value : t > 0 ? 0 : t; }, end({ x: e }) { s.value = !0; const t = e - l; t > 0 ? a.value = t > o ? 0 : -n.value : t < 0 && (a.value = t < -o ? -n.value : 0); } }; return m(() => { const { offsetWidth: e } = r.value; n.value = e, o = e / 4, p(c.value, i); }), { hidden: r, maxDistance: n, currentValue: a, isActive: s }; }; export { h as useHandMove };