element table列表根据数据设置背景色

 更新时间:2023年08月24日 11:17:03   作者:冷冰染  
在使用elementui中的el-table时,需要将表的背景色和字体颜色设置为新颜色,本文就来介绍一下element table列表根据数据设置背景色,感兴趣的可以了解一下

效果

页面代码

通过 :cell-class-name 动态绑定类名

    <el-table :data="tableData" style="width: 100%" :cell-class-name="myclass">
      <el-table-column prop="date" label="日期" width="180"> </el-table-column>
      <el-table-column prop="name" label="姓名" width="180"> </el-table-column>
      <el-table-column prop="address" label="地址"> </el-table-column>
    </el-table>

数据

      tableData: [
        {
          date: "2023-05-02",
          name: "兔子先森",
          address: "上海市普陀区金沙江路 1518 弄",
          isShow: 1,
        },
        {
          date: "2023-05-04",
          name: "兔子先森",
          address: "上海市普陀区金沙江路 1517 弄",
          isShow: 1,
        },
        {
          date: "2023-05-01",
          name: "兔子先森",
          address: "上海市普陀区金沙江路 1519 弄",
          isShow: 0,
        },
        {
          date: "2023-05-03",
          name: "兔子先森",
          address: "上海市普陀区金沙江路 1516 弄",
          isShow: 2,
        },
      ],

js方法

直接写到 methods 中,列表绑定即可,不需要放到生命周期中。

    // 修改单元格样式的方法
    myclass({ row, column, rowIndex, columnIndex }) {
      // row当前行,column表格列,rowIndex表格的第几行,columnIndex第几个格子
      // 根据当前行的参数判断,修改当前行样式
      if (row.isShow == 0) {
        return "setclass";
      } else if (row.isShow == 2) {
        return "setSuccess";
      }
      // 还可以设置对应单元格颜色
      // 表格的第二行-起始下标0
      if (rowIndex === 1) {
        // 第二行下标为1的格子
        if (columnIndex == 1) {
          return "setHeight";
        }
      }
    },

css部分

不能使用 scope 作用域,否则背景色不生效

<style lang='scss'>
.setclass {
  background: yellow !important;
  color: red !important;
}
.setSuccess {
  background: green !important;
  color: white !important;
}
.setHeight {
  color: blue !important;
}
</style>

动态刷新列表数据关联列表背景色

当列表数据更改时,我们需要根据列表数据来动态判断列表是否高亮提示,此时只需要更改列表数据即可,列表重载数据会再次动态刷新,不需要调用任何方法

// 数据未上述列表数据
    isDanger() {
      this.tableData.forEach((el,index) => {
        if(index % 2 == 0){
          el.isShow = 0
        }else {
          el.isShow = 2
        }
      });
    }

相关文章

  • vue.js项目打包上线的图文教程

    vue.js项目打包上线的图文教程

    下面小编就为大家分享一篇vue.js项目打包上线的图文教程,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2017-11-11
  • Vue中安装element-ui失败问题原因及解决

    Vue中安装element-ui失败问题原因及解决

    Vue中安装element-ui失败问题原因及解决,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-01-01
  • Vue3开发必备的六个VSCode插件推荐

    Vue3开发必备的六个VSCode插件推荐

    在VSCode中添加好用的插件可以提高我们的开发效率,这些可以帮助我们格式化,扩充性,执行最佳实践的代码方式,自动完成一些琐碎的事情,下面这篇文章主要给大家推荐介绍了关于Vue3开发必备的六个VSCode插件,需要的朋友可以参考下
    2022-12-12
  • vue3+vite相对路径的处理方式

    vue3+vite相对路径的处理方式

    这篇文章主要介绍了vue3+vite相对路径的处理方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-06-06
  • vue.js todolist实现代码

    vue.js todolist实现代码

    这篇文章主要介绍了vue.js todolist实现代码,需要的朋友可以参考下
    2017-10-10
  • vue3界面使用router及使用watch监听router的改变

    vue3界面使用router及使用watch监听router的改变

    vue2中使用router非常简单,但是vue3中略微有些改变,通过本文讲解下他的改变,对vue3 watch监听router相关知识感兴趣的朋友一起看看吧
    2022-11-11
  • vue获取路由详细内容信息方法实例

    vue获取路由详细内容信息方法实例

    获取路由详细内容信息是我们日常开发中经常会遇到的需求,下面这篇文章主要给大家介绍了关于vue获取路由详细内容信息的相关资料,文中通过示例代码介绍的非常详细,需要的朋友可以参考下
    2022-12-12
  • vue中keep-alive,include的缓存问题

    vue中keep-alive,include的缓存问题

    这篇文章主要介绍了vue中keep-alive,include的缓存问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-11-11
  • vue与iframe页面数据互相通信的实现示例

    vue与iframe页面数据互相通信的实现示例

    这篇文章主要给大家介绍了vue与iframe页面数据互相通信的实现示例,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2023-12-12
  • Vue之表单事件数据绑定详解

    Vue之表单事件数据绑定详解

    这篇文章主要为大家介绍了Vue之表单事件的数据绑定,具有一定的参考价值,感兴趣的小伙伴们可以参考一下,希望能够给你带来帮助,希望能够给你带来帮助
    2021-11-11

最新评论