UNPKG

wetrade-design

Version:

一款多语言支持Vue3的UI框架

69 lines (68 loc) 1.87 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.default = exports.barProps = void 0; var _vue = require("vue"); var _utils = require("./utils"); var _thumb = _interopRequireDefault(require("./thumb")); var barProps = function barProps() { return { always: { type: Boolean, default: true }, width: String, height: String, ratioX: { type: Number, default: 1 }, ratioY: { type: Number, default: 1 } }; }; exports.barProps = barProps; var Bar = (0, _vue.defineComponent)({ props: barProps(), setup: function setup(props, _ref) { var expose = _ref.expose; var moveX = (0, _vue.ref)(0); var moveY = (0, _vue.ref)(0); var handleScroll = function handleScroll(wrap) { if (wrap) { var offsetHeight = wrap.offsetHeight - _utils.GAP; var offsetWidth = wrap.offsetWidth - _utils.GAP; moveY.value = wrap.scrollTop * 100 / offsetHeight * props.ratioY; moveX.value = wrap.scrollLeft * 100 / offsetWidth * props.ratioX; } }; expose({ handleScroll: handleScroll }); return function () { var ratioX = props.ratioX, ratioY = props.ratioY, width = props.width, height = props.height, always = props.always; return (0, _vue.createVNode)(_vue.Fragment, null, [(0, _vue.createVNode)(_thumb.default, { "move": moveX.value, "ratio": ratioX, "size": width, "always": always }, null), (0, _vue.createVNode)(_thumb.default, { "move": moveY.value, "ratio": ratioY, "size": height, "vertical": true, "always": always }, null)]); }; } }); var _default = Bar; exports.default = _default;