Vue中自定义实现类似el-table的表格效果实现行颜色根据数据去变化展示

news2024/11/25 17:21:48

  主要使用div布局实现表格效果,并使用渐变实现行背景渐变的效果

页面布局 

<div class="table-wrap">
      <div class="table-title">
        <div
          v-for="(item, index) in tableColumn"
          :key="index"
          :prop="item.prop"
          :style="{
            width: item.width + 'px'
          }"
          :align="item.align"
        >
          {{ item.label }}
        </div>
        <!-- <div class="prop1">平台</div>
        <div class="prop2">币种</div>
        <div class="prop3">爆仓价格</div>
        <div class="prop4">金额</div>
        <div class="prop5">时间</div> -->
      </div>
      <div class="table-body">
        <div
          class="live-row"
          v-for="(item, index) in tableData"
          :class="{
            'long-bg-color': item.flag == 0,
            'short-bg-color': item.flag == 1
          }"
          :key="index"
        >
          <div class="prop1">
            <img :src="getExchangeIcon(item.pt)" />
            {{ item.pt }}
          </div>
          <div class="prop2">
            {{ item.bz }}
          </div>
          <div class="prop3">
            {{ item.bcjg }}
          </div>
          <div class="prop4">
            {{ item.je }}
          </div>
          <div class="prop5">
            {{ formatTime(item.sj, 'MM-DD HH:mm:ss') }}
          </div>
        </div>
      </div>
    </div>

数据

const tableColumn = ref([
  {
    label: '平台',
    prop: 'pt',
    width: 115,
    align: 'left'
  },
  {
    label: '币种',
    prop: 'bz',
    width: 105,
    align: 'left'
  },
  {
    label: '爆仓价格',
    prop: 'bcjg',
    width: 100,
    align: 'center'
  },
  {
    label: '金额',
    prop: 'je',
    width: 100,
    align: 'right'
  },
  {
    label: '时间',
    prop: '时间',
    width: 120,
    align: 'right'
  }
]);
const tableData = [
  {
    pt: '123',
    bz: '123',
    bcjg: '$2342.1',
    je: '$2342.1万',
    sj: '1695106716182',
    flag: 1
  },
  {
    pt: '123',
    bz: '123',
    bcjg: '$2342.1',
    je: '$2342.1万',
    sj: '1695106716182',
    flag: 0
  },
  {
    pt: '123',
    bz: '123',
    bcjg: '$2342.1',
    je: '$2342.1万',
    sj: '1695106716182',
    flag: 0
  },
  {
    pt: '123',
    bz: '123',
    bcjg: '$2342.1',
    je: '$2342.1万',
    sj: '1695106716182',
    flag: 1
  }
];

样式部分

--table-bg-Short1: linear-gradient(
        to right,
        #ff000000,
        #d32f2f80 90%,
        #d32f2f80
      );
      --table-bg-Long1: linear-gradient(
        to right,
        #ff000000,
        #22ab942e 90%,
        #22ab9457
      );

.table-wrap {
    .prop1 {
      width: 115px;
      text-align: left;
    }
    .prop2 {
      width: 105px;
      text-align: left;
    }
    .prop3 {
      width: 100px;
      text-align: center;
    }
    .prop4 {
      width: 100px;
      text-align: right;
    }
    .prop5 {
      width: 120px;
      text-align: right;
    }
    .table-title {
      display: flex;
      color: #868e9b;
      font-family: PingFang SC;
      font-size: 14px;
      font-weight: 400;
      border-bottom: 1px solid #252525;
      div {
        height: 50px;
        line-height: 50px;
      }
    }
    .table-body {
      height: 610px;
      overflow: auto;
      position: relative;
      .live-row {
        display: flex;
        height: 60px;
        line-height: 60px;
        color: #fff;
        font-family: DIN;
        font-size: 14px;
        border-bottom: 1px solid #252525;
        .prop1 {
          img {
            width: 16px;
            height: 16px;
            margin-right: 5px;
            vertical-align: middle;
          }
        }
      }
      --table-bg-Short1: linear-gradient(
        to right,
        #ff000000,
        #d32f2f80 90%,
        #d32f2f80
      );
      --table-bg-Long1: linear-gradient(
        to right,
        #ff000000,
        #22ab942e 90%,
        #22ab9457
      );
      .long-bg-color {
        background: var(--table-bg-Long1);
      }
      .short-bg-color {
        background: var(--table-bg-Short1);
      }
    }
  }

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1049569.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

嵌入式Linux应用开发-第七章-IMX6ULL-QEMU的LED驱动程序

嵌入式Linux应用开发-第七章-IMX6ULL-QEMU的LED驱动程序 IMX6ULL-QEMU的 LED驱动程序7.5 IMX6ULL-QEMU的 LED驱动程序7.5.1 看原理图确定引脚及操作方法7.5.2 所涉及的寄存器操作7.5.3 写程序7.5.4 上机实验7.5.5 课后作业 IMX6ULL-QEMU的 LED驱动程序 7.5 IMX6ULL-QEMU的 LED驱…

简化任务调度与管理:详解XXL-Job及Docker Compose安装

在现代应用程序开发中&#xff0c;任务调度和管理是至关重要的一部分。XXL-Job是一个强大的分布式任务调度平台&#xff0c;它使得任务的调度和管理变得更加轻松和高效。本文将介绍XXL-Job的基本概念&#xff0c;并详细演示如何使用Docker Compose进行快速安装和配置。 什么是X…

【大模型和智能问答系统】

大模型和智能问答系统 大模型前的智能问答系统传统管道式架构存在的问题 大模型前的智能问答系统 大模型统一代指以ChatGPT为代表的&#xff0c;参数量相比以前模型有明显量级变化的生成模型。 智能问答系统&#xff0c;按照应用可以划分*任务型 *和 非任务型。 任务型问答系…

Java集成Onlyoffice以及安装和使用示例,轻松实现word、ppt、excel在线编辑功能协同操作,Docker安装Onlyoffice

安装Onlyoffice 拉取onlyoffice镜像 docker pull onlyoffice/documentserver 查看镜像是否下载完成 docker images 启动onlyoffice 以下是将本机的9001端口映射到docker的80端口上&#xff0c;访问时通过服务器ip&#xff1a;9001访问&#xff0c;并且用 -v 将本机机/data/a…

容器启动报错

容器启动报错 docker: Error response from daemon: driver failed programming external connectivity on endpoint XXX 如下&#xff1a; 据百度&#xff1a; 在docker启动后在&#xff0c;再对防火墙firewalld进行操作&#xff0c;就会发生上述报错 详细原因&#xff1a…

flutter 【iOS】App Store介绍页中显示的语言列表如何设置

【iOS】App Store介绍页中显示的语言列表如何设置 iOS实现语言本地化

git新建仓库上传项目步骤

1、git init 2、git add . 3、git commit -m "first commit" 4、git remote add origin https://gitee.com... 5、git push origin master --force 为方式踩坑&#xff0c;浪费不必要的时间&#xff0c;以上步骤必须依次执行

京东大型API网关实践之路

概述 1、背景 京东作为电商平台&#xff0c;近几年用户、业务持续增长&#xff0c;访问量持续上升&#xff0c;随着这些业务的发展&#xff0c;API网关应运而生。 API网关&#xff0c;就是为了解放客户端与服务端而存在的。对于客户端&#xff0c;使开放给客户端的接口标准统…

时间复杂度、空间复杂度 O(1)和 O(logN)

时间复杂度&#xff08;time complexity&#xff09;&#xff1a;估算程序指令的执行次数&#xff08;执行时间&#xff09; 空间复杂度&#xff08;space complexity&#xff09;&#xff1a;估算所需占用的存储空间 public static void test1(int n) {// 确定的执行次数if …

AI创作系统ChatGPT商业运营版源码+AI绘画/支持GPT联网提问/支持Midjourney绘画+Prompt应用+支持国内AI提问模型

一、AI创作系统 SparkAi创作系统是基于国外很火的ChatGPT进行开发的Ai智能问答系统。本期针对源码系统整体测试下来非常完美&#xff0c;可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如何搭建部署AI创作ChatGPT&#xff1f;小编这里写一个详细图文教程吧&am…

nodejs+vue装修公司CRM系统设计elementui

第3章 系统分析 5 3.1 需求分析 5 3.2 系统可行性分析 5 3.2.1技术可行性&#xff1a;技术背景 5 3.2.2经济可行性 6 3.2.3操作可行性&#xff1a; 6 3.3 项目设计目标与原则 6 3.4系统流程分析 7 3.4.1操作流程 7 3.4.2添加信息流程 8 3.4.3删除信息流程 9 第4章 系统设计 11 …

MonkeyRunner测试步骤

首先把安卓SDK的 环境变量给配置好&#xff0c;这里就不再多解释&#xff0c;自己google 然后将自己的安卓设备打开调试模式&#xff0c;USB连接至电脑&#xff0c;运行CMD,输入命令adb devices 查看你的安卓设备的ID&#xff08;ID后面写程序会调用&#xff09;&#xff0c;…

Cortex-A9 架构

一、Cortex-A 处理器运行模式 Cortex-A9处理器有 9中处理模式&#xff0c;如下表所示&#xff1a; 九种运行模式 在上表中&#xff0c;除了User(USR)用户模式以外&#xff0c;其它8种运行模式都是特权模式&#xff0c;在特权模式下&#xff0c;程序可以访问所有的系统资源。这…

目标检测:FROD: Robust Object Detection for Free

论文作者&#xff1a;Muhammad,Awais,Weiming,Zhuang,Lingjuan,Lyu,Sung-Ho,Bae 作者单位&#xff1a;Sony AI; Kyung-Hee University 论文链接&#xff1a;http://arxiv.org/abs/2308.01888v1 内容简介&#xff1a; 1&#xff09;方向&#xff1a;目标检测 2&#xff09;…

探索性测试最佳实践

探索性测试是一种软件测试风格&#xff0c;而不是一种具体的软件测试技术。探索性测试强调依据当前待测项目实际情况&#xff0c;选择合适的测试技术&#xff0c;而不局限于特定的测试技术。 测试人员探索软件、并尝试不同的场景、输入和交互&#xff0c;而不使用预先编写的测试…

【算法分析与设计】动态规划(上)

目录 一、学习要点二、算法总体思想三、动态规划基本步骤四、矩阵连乘问题4.1 完全加括号的矩阵连乘积4.2 穷举法4.3 动态规划4.3.1 分析最优解的结构4.3.2 建立递归关系4.3.3 计算最优值4.3.4 用动态规划法求最优解 五、动态规划算法的基本要素5.1 最优子结构5.2 重叠子问题5.…

AI项目十一:Swin Transformer训练

若该文为原创文章&#xff0c;转载请注明原文出处。 续上一篇&#xff0c;训练自己的数据集&#xff0c;并测试。 一、安装标注软件labelme # 安装labelme pip install labelme # 启动 labelme 这里数据集准本&#xff0c;标注图片数据过程自己探索。 最后文件结构如下&…

0x2C动态定义数据标识符服务

其实就是临时在指定地址创建个信息DID&#xff0c;里面可以存写临时数据&#xff0c;到时候可以给自己读写&#xff0c;但是这东西一重启或者过段时间就没了。要用0x22服务去读取&#xff0c;0x2A来写&#xff0c;不能用0x2E来写&#xff0c;协议认为0x2E不能指定地址来写。 这…

C++之容器类有趣的实验(二百四十一)

简介&#xff1a; CSDN博客专家&#xff0c;专注Android/Linux系统&#xff0c;分享多mic语音方案、音视频、编解码等技术&#xff0c;与大家一起成长&#xff01; 优质专栏&#xff1a;Audio工程师进阶系列【原创干货持续更新中……】&#x1f680; 人生格言&#xff1a; 人生…

处理conda安装工具的动态库问题——解决记录 libssl.1.0.0 系统中所有openssl位置全览 whereis openssl

处理conda安装工具的动态库问题——解决记录 处理conda安装工具的动态库问题——解决记录 - 简书 解决libssl.so.1.0.0: cannot open shared object file: No such file or directory问题 - 简书 openssl 默认版本问题&#xff08;Anaconda相关&#xff09;_anaconda openssl-…