l-element-components
Version:
43 lines (42 loc) • 1.03 kB
JavaScript
import { defineComponent as l, ref as p, onMounted as s, resolveComponent as c, createBlock as i, openBlock as m, mergeProps as u, unref as f } from "vue";
const g = /* @__PURE__ */ l({
__name: "index",
props: {
//进度条进度
percentage: {
type: Number,
default: 0
},
//是否有动画效果
isAnimation: {
type: Boolean,
default: !1
},
//动画时长(s)
time: {
type: Number,
default: 3e3
}
},
setup(n) {
let e = n, t = p(0);
return s(() => {
if (e.isAnimation) {
let r = Math.ceil(e.time / e.percentage), a = setInterval(() => {
t.value += 1, t.value >= e.percentage && (t.value = e.percentage, clearInterval(a));
}, r);
} else
t.value = e.percentage;
}), (r, a) => {
const o = c("el-progress");
return m(), i(o, u(r.$attrs, { percentage: f(t) }), null, 16, ["percentage"]);
};
}
}), _ = {
install(n) {
n.component("l-progress", g);
}
};
export {
_ as default
};