element-plus
Version:
A Component Library for Vue 3
29 lines (26 loc) • 778 B
JavaScript
import { ref } from 'vue';
import '../../../../utils/index.mjs';
import { isNumber } from '@vueuse/core';
const useScrollbar = () => {
const scrollBarRef = ref();
const scrollTo = ({ top, left }) => {
setScrollTop(top);
setScrollLeft(left);
};
const setScrollPosition = (position, offset) => {
const scrollbar = scrollBarRef.value;
if (scrollbar && isNumber(offset) && ["Top", "Left"].includes(position)) {
scrollbar[`setScroll${position}`](offset);
}
};
const setScrollTop = (top) => setScrollPosition("Top", top);
const setScrollLeft = (left) => setScrollPosition("Left", left);
return {
scrollBarRef,
scrollTo,
setScrollTop,
setScrollLeft
};
};
export { useScrollbar };
//# sourceMappingURL=use-scrollbar.mjs.map