UNPKG

@zhsz/cool-design-dv

Version:

93 lines (92 loc) 2.62 kB
"use strict"; Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } }); const vue = require("vue"); const baseNumber_vue_vue_type_script_setup_true_lang = require("./baseNumber.vue.js"); require("./style.css"); const __default__ = vue.defineComponent({ name: "DvNumber", inheritAttrs: false }); const _sfc_main = /* @__PURE__ */ vue.defineComponent({ ...__default__, props: { background: Boolean, // 数字 value: [Number, String], // 默认值 defaultValue: { type: [Number, String], default: 0 }, // CountUp配置参数对象 countUp: { type: [Boolean, Object] }, // 趋势 trend: { type: String, validator(val) { return ["up", "down", "-"].includes(val); } }, // 精度,保留几位小数 precision: { type: Number, default: 0 }, // 分隔符 separator: { type: String, default: "," }, // 前缀 prefix: { type: String }, // 后缀 suffix: String, // 按百分比计算显示 percentage: Boolean, // 前缀 和 后缀采用下标显示 sup: Boolean }, setup(__props) { const props = __props; const $attrs = vue.useAttrs(); const classes = vue.computed(() => { return { "is-background": props.background }; }); function getArray(value) { const array = String(value).split(""); return array.map((n) => { return { value: n, number: !Number.isNaN(Number.parseInt(n)) }; }); } return (_ctx, _cache) => { return vue.openBlock(), vue.createElementBlock("div", { class: vue.normalizeClass(["my-dv-number", classes.value]) }, [ vue.createVNode(baseNumber_vue_vue_type_script_setup_true_lang.default, vue.normalizeProps(vue.guardReactiveProps({ ...vue.unref($attrs), ...props })), vue.createSlots({ _: 2 }, [ __props.background ? { name: "default", fn: vue.withCtx(({ displayValue }) => [ (vue.openBlock(true), vue.createElementBlock(vue.Fragment, null, vue.renderList(getArray(displayValue), (item, index) => { return vue.openBlock(), vue.createElementBlock("span", { key: index, class: vue.normalizeClass({ "is-number": item.number }) }, vue.toDisplayString(item.value), 3); }), 128)) ]), key: "0" } : void 0 ]), 1040) ], 2); }; } }); exports.default = _sfc_main;