根据后端返回值在前端动态做出进度条样式

本文介绍了如何在Vue.js中利用data、计算属性和ready函数实现动态进度条的宽度计算以及百分比的显示。首先定义已完成、总数和比例的变量,然后在计算属性中设置动态宽度,并在ready函数中处理比例值。最后,通过动态样式将百分比应用到页面元素上,实现与后端返回值联动的效果。
摘要由CSDN通过智能技术生成

1、首先,在js中的data中定义三个变量,分别为已完成的、未完成的,以及两者的比值,默认为0

data: {
  //这里是为了方便看效果随意设置两个数值,实际工作中将返回值赋值即可
	yiWanCheng:4,//已完成的
	zongShu:16,//总数
	percentage:0,//已完成的 / 未完成的 = 百分比
},

2、接着,在vue的计算属性中添加方法

computed:{
	// 根据进度条动态变化宽度,这里的方法名表示为动态宽度
	lineProgress(){
	  const style = {}
	  style.width = this.percentage +'%';
	  return style
	}
},

3、然后,对比值变量做进一步处理

ready: function(){
	var vm = this,
	vm.percentage = vm.yiwancheng / vm.zongShu;
	//toFixed()里面的数值代表精确到小数点后几位小数
	vm.percentage = Number(vm.percentage * 100).toFixed(2);
	return vm.percentage;
},

4、最后,在需要设置的结构中添加动态样式,:style=“方法名”,再通过插值表达式{{ }}将百分比数值展示出来更直观

<div class="correct_progress">
	<span>实验名:</span>
	<div class="progress_bar" title="总数量">
		<!-- 设置一个百分比参数:已批改的/已产生的 -->
		<a href="" class="completed" :style="lineProgress" title="已完成数量"></a>
	</div>
	<span>已完成 {{percentage}} %</span>
</div>

5.也可以直接根据返回的百分比数值设置动态样式

<i class="completed" :style="{'width':item.percentage}" title="已批改的数" ></i>
<i v-if="item.num>0">已完成: {{item.percentage}}</i>
// item.percentage 为后端返回的数据设置成百分比模式的

最后效果就是这样的,百分比跟后端返回值有关,这里是静态数据
在这里插入图片描述

喜欢的童鞋点个赞 啊哈哈,又来骗赞啦 (*︶ *)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值