需求就是将很多个数据,以进度条的形式展示在页面上,形成一个可视化。

接下来是html代码

<!DOCTYPE html>
<html>
<head>
<title>在v-for中给css传递一个数组参数</title>
<style type="text/css">
.main {
padding-top: 4%;
padding-left: 60px;
}
.content {
display: flex;
flex-direction: row;
flex-wrap: nowrap;
justify-content: flex-start;
padding-top: 1%;
}
li {
list-style: none;
padding: 7px 0;
}
.name {
padding-right: 100px;
height: 22px;
width: 140px;
font-size: 22px;
font-family: MicrosoftYaHei;
font-weight: 400;
color: black;
}
.value {
padding-left: 60px;
width: 120px;
height: 20px;
font-size: 25px;
font-weight: 400;
color: rgba(108, 231, 246, 1);
}
</style>
</head>
<script src="https://cdn.jsdelivr.net/npm/vue/dist/vue.js"></script>
<body>
<div id="box">
<div class="main">
<li v-for="(item,index) in targetAssete" :key="item.index">
<div class="content">
<div class="name">{{item.name}}</div>
<div
style="background-color:black;height:27px;width:276px; border-radius:14px 14px 14px 14px;"
>
<div v-if="index<1" :style="one_style"></div>
<div v-else-if="index<2" :style="two_style"></div>
<div v-else :style="[three_style, {width:[width_datas[index]]}]"></div>
</div>
<div class="value">{{item.value}}</div>
</div>
</li>
</div>
</div>
</body>
</html>
<script type="text/javascript">
new Vue({
el:'#box',
data(){
return{
targetAssete:[
{name:'第一条',value:40},
{name:'第二条',value:30},
{name:'第三条',value:20},
{name:'第四条',value:10}
],
width_datas:[],
one_style:{
background: "rgba(173, 215, 67, 1)",
height: "30px",
width: "40px",
"border-radius": "14px"
},
two_style: {
background: "rgba(239, 144, 58, 1)",
height: "30px",
width: "30px",
"border-radius": "14px"
},
three_style: {
background: "rgba(80,175,178,1)",
height: "30px",
width:"20px",
"border-radius": "14px"
},
}
},
methods:{
getType(){
let sum = 0;
for (var i = 0; i < this.targetAssete.length; i++) {
sum += this.targetAssete[i].value;
}
var numbers = [];
for (var a = 0; a < this.targetAssete.length; a++) {
numbers.push(
((this.targetAssete[a].value / sum) * 100).toFixed(2) + "%"
);
}
this.width_datas = numbers;
this.one_style.width = numbers[0];
this.two_style.width = numbers[1];
}
},
mounted(){
this.getType()
}
})
</script>

最后的效果 如下图所示:

第一列为显示的名称;

第二列为数据可视化;

第三列为具体的数据;

Vue在v-for中给css传递一个数组参数的更多相关文章

  1. Django路由系统---django重点之url传递一个默认参数

    django重点之url传递一个默认参数 可以利用这个特性,让2个URL映射一个函数,但是返回2个不同的HTML url(r'default_param1', views.def_param,), u ...

  2. [K/3Cloud] 动态表单打开时传递一个自定义参数并在插件中获取

    插件中在调用动态表单时,通过DynamicFormShowParameter的CustomParams,增加自定义的参数. /// <summary> /// 库存查询 /// </ ...

  3. 解决JavaScript中使用$.ajax方式提交数组参数

    一般的,可能有些人在一个参数有多个值的情况下,可能以某个字符分隔的形式传递,比如页面上有多个checkbox: $.ajax{ url:"xxxx", data:{ p: &quo ...

  4. 使用javaScript解决asp.net中mvc使用ajax提交数组参数的匹配问题

    想到在asp.net的mvc中如果使用ajax向服务端传递参数时如果参数是一个类或者是个数组(或List集合)以及更复杂的对象时,服务端总是会发生取不到值的情况,当然网上也有很多解决的例子,但都是在服 ...

  5. HTML 相同name 传递一个数组

    今天发现一个很厉害的东西 在input表单中,name名称可以是一个,后面[],里面跟名称,和数组一样,传递到PHP中也是一个数组 <html> <body> <form ...

  6. mybatis 中sql语句传递多个参数

    Available parameters are [2, 1, 0, param1, param2, param3] <select id="loginByTeacher"  ...

  7. springMVC中使用ajax传递json数组

    解决方法 去www.json.org下载JSON2.js 再调用JSON.stringify(JSONData)将JSON对象转化为JSON串. var people = [{ "UserN ...

  8. springMVC中a标签传递多个参数到后台的应用

    1.js页面:返回json填充HTML部分代码 <a class='byCard' href="+path+"/static/toCardView/"+ data. ...

  9. MVC中使用ajax传递json数组

    解决方法 去www.json.org下载JSON2.js再调用JSON.stringify(JSONData)将JSON对象转化为JSON串. var people = [{ "UserNa ...

随机推荐

  1. EF中延迟加载的那些事

    延迟加载又称懒加载,通俗一点就是关联了一个对象,不用的时候不去查这个对象,当调用的时候再组织sql去查出这个对象的相关内容. 一.在使用EF时,我们会发现借助于框架生成的实体类中的的导航属性通常是标记 ...

  2. BT面板安装教程

    面板特点 一键配置服务器环境(LAMP/LNMP) 一键安全重启 一键创建管理网站.ftp.数据库 一键配置(定期备份.数据导入.伪静态.301.SSL.子目录.反向代理.切换PHP版本) 一键安装常 ...

  3. IOS上传图片方向问题

    在显示上传完毕的图片的时候遇到了一个问题, 图片莫名其妙被逆时针旋转了90度就很离谱 如下图 经过一番查询, 原来是 IOS 的相机拍照的时候会把方向角写入到图片里面 因为我用的是 element 的 ...

  4. [spring] -- 设计模式篇

    工厂模式 Spring使用工厂模式可以通过 BeanFactory 或 ApplicationContext 创建 bean 对象. BeanFactory :延迟注入(使用到某个 bean 的时候才 ...

  5. 两个问题解答、opencv、tensorflow、numpy、matplotlib的基本使用

    开始图像处理的海洋 (1)两个问题的详细解答 在开始畅游opencv.tensorflow的海洋之前,我们这里先要解决两个问题. 1.Jupyter notebook 解决了无法自动跳转到浏览器的问题 ...

  6. Shell分析服务器日志,解锁各种新姿势

    1.查看有多少个IP访问: awk '{print $1}' log_file|sort|uniq|wc -l 2.查看某一个页面被访问的次数: grep "/index.php" ...

  7. nginx访问日志分析,筛选时间大于1秒的请求

    处理nginx访问日志,筛选时间大于1秒的请求   #!/usr/bin/env python ''' 处理访问日志,筛选时间大于1秒的请求 ''' with open('test.log','a+' ...

  8. ES5---Proxy的理解的使用

    定义:Proxy原意为“代理”,在这可以理解为代理/拦截器的意思.Proxy在一个目标对象前放置了一个拦截,凡是外界对该对象的访问,都必须通过这层拦截,所以Proxy可以对外界的访问进行过滤和改写. ...

  9. Day06_商品分类(vuetify-nginx-cors)与品牌查询

    学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"乐优商城"获取视频和教程资料! b站在线视频 0.学习 ...

  10. mapstruct 实体转换及List转换,@Mapper注解转换

    本文参考 https://blog.csdn.net/u012373815/article/details/88367456 主要是为了自己使用方便查询. 这些都是我平时用到了,大家有什么好方法或者有 ...