使用element UI中的Progress定义排行

    原型图如下:

使用element UI中的Progress定义排行

    首先,这需要展示五条数据,每条的颜色都不一样,还要显示百分比,每条数据可分为上下两部分,上部分展示名字和百分比,下部分显示进度条。因为项目用的element,所以直接用它里面的Progress完成。

     用flex布局很容易实现这种布局,可以用v-for循环展示出内容:

使用element UI中的Progress定义排行

progressData就是数据源,要修改它原有的样式

.el-progress-bar__outer{border-radius: 0;background-color:#3a3e63}

.el-progress-bar__inner{border-radius: 0;}

.el-progress__text{display: none;}

.el-progress-bar{padding: 0 1.25rem;}

看下效果:

使用element UI中的Progress定义排行

嗯~~~大致效果出来了,开始搞颜色,Progress有个color属性,可以更改颜色,关键它可以是函数啊,那做起来更方便了。首先,定义一个数组来装颜色

progressColor:['#1bf8f3','#3196e8','#feb046','#e8484f','#9174e4']

在定义个函数customColorMethod(index),传个位置的参数,方便从数组里取值,

使用element UI中的Progress定义排行

好了,看下效果吧

使用element UI中的Progress定义排行

   哇啊啊,还剩两处:右上角的百分数和进度条。也挺好弄得,道理和customColorMethod函数一样,动态绑定css。

使用element UI中的Progress定义排行

好了,完美实现。这里面我都是动态绑定一个方法,第一次这样用,也不知道合不合理,分享出来请大佬指点指点。不喜勿喷啊