简单实现进度条效果(vue2)

如果用echarts或者其他图表来写个进度条有点大材小用,所以直接简单html、js写一下就可以;

以下代码基于vue2,

部分代码来自国内直连GPT/Claude镜像站

javascript 复制代码
<template>
  <div class="progress-container">
    <div class="progress-item" v-for="(item, index) in progressData" :key="index">
      <div class="label">{{ item.label }}</div>
      <div class="progress-bar">
        <div class="progress" :style="{ width: item.value + '%', backgroundColor: item.color }">
          <span class="value">{{ item.value }}%</span>
        </div>
      </div>
    </div>
  </div>
</template>

<script>
export default {
  name: 'ProgressChart',
  data() {
    return {
      progressData: [
        { label: '当前值', value: 15, color: '#ff4757' },
        { label: '设计值', value: 8, color: '#2ed573' }
      ]
    }
  },
}
</script>

<style scoped>
.progress-container {
  background-color: #1e3a5f;
  padding: 10px;
}
.progress-item {
  display: flex;
  align-items: center;
  margin-bottom: 10px;
}
.label {
  width: 60px;
  color: #fff;
  font-size: 14px;
}
.progress-bar {
  flex-grow: 1;
  height: 20px;
  background-color: #2c4d6f;
  margin: 0 10px;
  position: relative;
}
.progress {
  height: 100%;
  transition: width 0.5s ease-in-out;
  position: relative;
}
.value {
  position: absolute;
  right: 5px;
  top: 50%;
  transform: translateY(-50%);
  color: #fff;
  font-size: 14px;
}
</style>
相关推荐
Liu.7741 分钟前
Vue 3 开发中遇到的报错(2)
前端·javascript·vue.js
C、空白格6 分钟前
Java集成Vosk实现离线语音识别
java·开发语言·语音识别
编码浪子15 分钟前
基于 Rust + Axum 的企业级权限管理系统设计与实现
开发语言·后端·rust
历程里程碑18 分钟前
MySQL事务深度解析:ACID到MVCC实战+万字长文解析
开发语言·数据结构·数据库·c++·sql·mysql·排序算法
Lyyaoo.25 分钟前
【JAVA基础面经】native方法
java·开发语言
牛十二27 分钟前
nacos2.4连接出错源码分析
java·linux·开发语言
|晴 天|32 分钟前
Vue 3 实现实时通知系统:支持未读计数、红点提醒、一键已读
javascript·vue.js·ecmascript
小松加哲35 分钟前
AspectJ编译期织入实战
java·开发语言
鲸渔36 分钟前
【C++ 跳转语句】break、continue、goto 与 return
开发语言·c++·算法
大流星40 分钟前
敲黑板!async/await应用原理
前端·javascript