vue-ele-plus
Version:
2 lines (1 loc) • 911 B
JavaScript
(function(e,n){typeof exports=="object"&&typeof module!="undefined"?module.exports=n(require("vue")):typeof define=="function"&&define.amd?define(["vue"],n):(e=typeof globalThis!="undefined"?globalThis:e||self,e.index=n(e.Vue))})(this,function(e){"use strict";const n=e.defineComponent({props:{percentage:{type:Number,default:0},isAnimation:{default:!0,type:Boolean},time:{default:3e3,type:Number}},setup(o){const t=o;let r=e.ref(0);return e.onMounted(()=>{if(t.isAnimation){let i=Math.ceil(t.time/t.percentage),p=setInterval(()=>{r.value+=1,r.value>=t.percentage&&(r.value=t.percentage,clearInterval(p))},i)}else r.value=t.percentage}),(i,p)=>{const l=e.resolveComponent("el-progress");return e.openBlock(),e.createElementBlock("div",null,[e.createVNode(l,e.mergeProps({percentage:e.unref(r)},i.$attrs,{isAnimation:""}),null,16,["percentage"])])}}});var s={install(o){o.component("m-progress",n)}};return s});