vuux
Version:
Vue3 Nuxt3 Nuxt4 组件库
36 lines (35 loc) • 1.1 kB
JavaScript
import { defineComponent as d, useTemplateRef as l, createElementBlock as i, openBlock as E, withDirectives as q, createElementVNode as v, unref as e, normalizeStyle as y, renderSlot as k, vShow as M } from "vue";
import { useMarquee as x } from "./hook/useMarquee.mjs";
const w = /* @__PURE__ */ d({
name: "Marquee",
__name: "index",
props: {
speed: { default: 1 }
},
setup(u) {
const m = u, n = l("marqueeEl"), o = l("contentEl"), { translateX: p, ready: f, pause: s, resume: a } = x(m, n, o);
return (c, t) => (E(), i("div", {
ref_key: "marqueeEl",
ref: n,
class: "app-marquee"
}, [
q(v("div", {
ref_key: "contentEl",
ref: o,
class: "marquee-content",
style: y({ transform: `translateX(${e(p)}px)` }),
onMouseenter: t[0] || (t[0] = //@ts-ignore
(...r) => e(s) && e(s)(...r)),
onMouseleave: t[1] || (t[1] = //@ts-ignore
(...r) => e(a) && e(a)(...r))
}, [
k(c.$slots, "default")
], 36), [
[M, e(f)]
])
], 512));
}
});
export {
w as default
};