当前位置: 首页 > news >正文

vxe-table 将表格指定行设置颜色后,选中行、悬浮行样式失效解决。

目录

      • 一、 表格悬浮行、选中行高亮
        • 1.效果
        • 2.代码
      • 二、 初始化表格 指定行设置背景颜色
        • 1. 效果
        • 2.代码
        • 3. 问题
      • 三、 解决选中行、悬浮行样式失效
        • 1. 效果
        • 2.代码

一、 表格悬浮行、选中行高亮

1.效果

在这里插入图片描述

2.代码

说明:给表格添加 :row-config="{isHover: true,isCurrent:true}" 即可

<template>
  <div>
    <vxe-table
      ref="xTable"
      height="400"
      :row-config="{isHover: true,isCurrent:true}"
      :data="tableData"
    >
      <vxe-column type="seq" width="60"></vxe-column>
      <vxe-column field="name" title="Name"></vxe-column>
      <vxe-column field="age" title="Age" sortable></vxe-column>
      <vxe-column field="address" title="Address" show-overflow></vxe-column>
    </vxe-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        { id: 10001, name: 'Test1', role: 'Develop',  age: 28, address: 'test abc' },
        { id: 10002, name: 'Test2', role: 'Test', age: 22, address: 'Guangzhou' },
        { id: 10003, name: 'Test3', role: 'PM',  age: 32, address: 'Shanghai' },
        { id: 10004, name: 'Test4', role: 'Designer',  age: 23, address: 'test abc' },
        { id: 10005, name: 'Test5', role: 'Develop',  age: 30, address: 'Shanghai' },
        { id: 10006, name: 'Test6', role: 'Designer',  age: 21, address: 'test abc' },
        { id: 10007, name: 'Test7', role: 'Test', age: 29, address: 'test abc' },
        { id: 10008, name: 'Test8', role: 'Develop',  age: 35, address: 'test abc' }
      ],
      
    }
  }
}
</script>

二、 初始化表格 指定行设置背景颜色

1. 效果

在这里插入图片描述

2.代码

  1. 给表格添加配置 :row-class-name="rowClassName"
  2. 在 methods 里编写过滤行方法 rowClassName,返回值是样式类名
  3. 在样式中设置背景颜色,样式名 ::v-deep .my-table .vxe-body--row.row-yellow。其中 .my-table 是表格类名,防止样式覆盖影响其他表格。
<template>
  <div class="box">
    <vxe-table
      class="my-table"
      ref="xTable"
      height="400"
      :row-config="{isHover: true,isCurrent:true}"
      :data="tableData"
      :row-class-name="rowClassName"
    >
      <vxe-column type="seq" width="60"></vxe-column>
      <vxe-column field="name" title="Name"></vxe-column>
      <vxe-column field="age" title="Age" sortable></vxe-column>
      <vxe-column field="address" title="Address" show-overflow></vxe-column>
    </vxe-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        { id: 10001, name: 'Test1', role: 'Develop', age: 28, address: 'test abc' },
        { id: 10002, name: 'Test2', role: 'Test', age: 22, address: 'Guangzhou' },
        { id: 10003, name: 'Test3', role: 'PM', age: 32, address: 'Shanghai' },
        { id: 10004, name: 'Test4', role: 'Designer', age: 23, address: 'test abc' },
        { id: 10005, name: 'Test5', role: 'Develop', age: 30, address: 'Shanghai' },
        { id: 10006, name: 'Test6', role: 'Designer', age: 21, address: 'test abc' },
        { id: 10007, name: 'Test7', role: 'Test', age: 29, address: 'test abc' },
        { id: 10008, name: 'Test8', role: 'Develop', age: 35, address: 'test abc' }
      ],
    }
  },
  methods: {
    rowClassName({ row }) {
      if (row.age >= 30) {
        return 'row-yellow'
      }
    }
  }
}

</script>

<style scoped>
.box {
  width: 700px;
  margin: 100px;
}

::v-deep .my-table .vxe-body--row.row-yellow {
  background-color: #e1ed8952;
  z-index: 99;
}
</style>

3. 问题

在这里插入图片描述
在这里插入图片描述

  • 官方给出的说明如下:
    在这里插入图片描述

三、 解决选中行、悬浮行样式失效

1. 效果

  • 条件成立时,显示初始化样式。悬浮行显示灰色,选中行显示蓝色。

在这里插入图片描述

2.代码

通过设置 z-index 来调节,具体实现见 style 部分。

<template>
  <div class="box">
    <vxe-table
      class="my-table"
      ref="xTable"
      height="400"
      :row-config="{isHover: true,isCurrent:true}"
      :data="tableData"
      :row-class-name="rowClassName"
    >
      <vxe-column type="seq" width="60"></vxe-column>
      <vxe-column field="name" title="Name"></vxe-column>
      <vxe-column field="age" title="Age" sortable></vxe-column>
      <vxe-column field="address" title="Address" show-overflow></vxe-column>
    </vxe-table>
  </div>
</template>

<script>
export default {
  data() {
    return {
      tableData: [
        { id: 10001, name: 'Test1', role: 'Develop', age: 28, address: 'test abc' },
        { id: 10002, name: 'Test2', role: 'Test', age: 22, address: 'Guangzhou' },
        { id: 10003, name: 'Test3', role: 'PM', age: 32, address: 'Shanghai' },
        { id: 10004, name: 'Test4', role: 'Designer', age: 23, address: 'test abc' },
        { id: 10005, name: 'Test5', role: 'Develop', age: 30, address: 'Shanghai' },
        { id: 10006, name: 'Test6', role: 'Designer', age: 21, address: 'test abc' },
        { id: 10007, name: 'Test7', role: 'Test', age: 29, address: 'test abc' },
        { id: 10008, name: 'Test8', role: 'Develop', age: 35, address: 'test abc' }
      ],
    }
  },
  methods: {
    rowClassName({ row }) {
      if (row.age >= 30) {
        return 'row-yellow'
      }
    }
  }
}

</script>

<style scoped>
.box {
  width: 700px;
  margin: 100px;
}

::v-deep .my-table .vxe-body--row.row-yellow {
  background-color: #e1ed8952;
   z-index: 99;
}

::v-deep .my-table .vxe-body--row.row--hover {
  background-color: #f5f7fa;
  z-index: 959;
}

::v-deep .my-table .vxe-body--row.row--current {
  background-color: #e6f7ff;
  z-index: 999;
}
</style>

相关文章:

  • 这些提高摸鱼效率的自动化测试技巧,提高打工人幸福感~
  • HelloSpring
  • Vite为啥如此之快
  • 从二值 Mask 获取外接矩形坐标
  • Tomcat 的本地部署及 SmartTomcat 的使用
  • Unity Shader LightMode 标签
  • linux搭建docker镜像服务
  • 解决mybatis用Map返回的字段全变大写的问题
  • 交联剂134272-64-3,MAL-NH2 HCl 在抗体的标记上面效果明显
  • mybatis第一次课
  • 全民拼购模式:社交电商与拼购新玩法
  • Linux笔记系列
  • 机器人冗余自由度优化过程中的零空间概念
  • ActiveMQ如何处理重复消息?如何保证消息的有序性?如何处理消息堆积?
  • 2022 面试必刷 461 道大厂架构面试真题汇总 + 面经 + 简历模板
  • 【402天】跃迁之路——程序员高效学习方法论探索系列(实验阶段159-2018.03.14)...
  • 2017届校招提前批面试回顾
  • 2017前端实习生面试总结
  • EOS是什么
  • iOS帅气加载动画、通知视图、红包助手、引导页、导航栏、朋友圈、小游戏等效果源码...
  • iOS小技巧之UIImagePickerController实现头像选择
  • javascript面向对象之创建对象
  • JS+CSS实现数字滚动
  • JS基础篇--通过JS生成由字母与数字组合的随机字符串
  • Theano - 导数
  • 仿天猫超市收藏抛物线动画工具库
  • 技术发展面试
  • 前端工程化(Gulp、Webpack)-webpack
  • 网页视频流m3u8/ts视频下载
  • 看到一个关于网页设计的文章分享过来!大家看看!
  • 3月7日云栖精选夜读 | RSA 2019安全大会:企业资产管理成行业新风向标,云上安全占绝对优势 ...
  • 400多位云计算专家和开发者,加入了同一个组织 ...
  • 阿里云重庆大学大数据训练营落地分享
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ###STL(标准模板库)
  • (Java数据结构)ArrayList
  • (初研) Sentence-embedding fine-tune notebook
  • (六)什么是Vite——热更新时vite、webpack做了什么
  • (南京观海微电子)——I3C协议介绍
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (四)七种元启发算法(DBO、LO、SWO、COA、LSO、KOA、GRO)求解无人机路径规划MATLAB
  • (转)MVC3 类型“System.Web.Mvc.ModelClientValidationRule”同时存在
  • (转)shell调试方法
  • .equals()到底是什么意思?
  • .NET 6 在已知拓扑路径的情况下使用 Dijkstra,A*算法搜索最短路径
  • .NET Core 2.1路线图
  • .Net Core缓存组件(MemoryCache)源码解析
  • .Net IE10 _doPostBack 未定义
  • .Net Redis的秒杀Dome和异步执行
  • .NET 中使用 Mutex 进行跨越进程边界的同步
  • .NET中的Exception处理(C#)
  • .pub是什么文件_Rust 模块和文件 - 「译」
  • @Bean有哪些属性
  • [ 数据结构 - C++] AVL树原理及实现
  • []error LNK2001: unresolved external symbol _m