需求:1)表头的数据是动态的,有可能字段值很长且很多。解决方案自定义动态表头,字段长使用文字提示【el-tooltip组件】;

   2)需要对表格data中的数据值进行枚举转成中文值,且显示不同的颜色。 

效果图:

直接上代码:

1、vue代码

 1 <el-table
2 :data="tableData"
3 border
4 style="width: 100%"
5 height="100%"
6 :header-cell-style="{
7 'background-color': '#F0F0F0',
8 color: '#333',
9 'font-weight': 'normal'
10 }"
11 ref="table"
12 v-loading="tableLoading"
13 >
14 <template v-for="(item, index) in tableHeader">
15 <el-table-column
16 :prop="item.englishName"
17 :key="index"
18 show-overflow-tooltip
19 align="center"
20 >
21 <template slot-scope slot="header">
22 <el-tooltip
23 effect="dark"
24 :content="item.chineseName"
25 placement="top"
26 class="table-header"
27 >
28 <span>{{ item.chineseName }}</span>
29 </el-tooltip>
30 </template>
31 <template slot-scope="scope">
32 <span v-if="item.englishName=='sex'" :class="{ redColor: scope.row.sex }">
33 {{
34 scope.row.sex ? "男" : "女"
35 }}
36 </span>
37 <span v-else>{{ scope.row[item.englishName] }}</span>
38 </template>
39 </el-table-column>
40 </template>
41 <el-table-column v-if="tableHeader.length" label="操作" fixed="right">
42 <template slot-scope="scope">
43 <el-button type="text" size="mini" @click="handleDetails(scope.row)">查看</el-button>
44 </template>
45 </el-table-column>
46 </el-table>

2、tableHeader的json格式

 1 [
2 {
3 englishName: "date",
4 chineseName: "日期",
5 },
6 {
7 englishName: "name",
8 chineseName: "姓名",
9 },
10 {
11 englishName: "sex",
12 chineseName: "性别",
13 },
14 {
15 englishName: "address",
16 chineseName: "地址",
17 }
18 ]

3、表格data的json格式

 1 [
2 {
3 date: "2016-05-02",
4 name: "王小虎",
5 sex: 1,
6 address: "上海市普陀区金沙江路 1518 弄",
7 },
8 {
9 date: "2016-05-04",
10 name: "王小虎",
11 sex: 1,
12 address: "上海市普陀区金沙江路 1517 弄",
13 },
14 {
15 date: "2016-05-01",
16 name: "王小虎",
17 sex: 1,
18 address: "上海市普陀区金沙江路 1519 弄",
19 },
20 {
21 date: "2016-05-03",
22 name: "王小虎",
23 sex: 1,
24 address: "上海市普陀区金沙江路 1516 弄",
25 }
26 ]

鉴定完毕,欢迎友们一起交流学习!!

Vue element-ui 动态生成自定义table表头实现数据渲染的更多相关文章

  1. element ui动态生成表单数据与校验(后台传入数据)

    前言 最近有一个需求是通过后台返回的数据,生成表单并添加校验.在做的过程中,动态表单挺好做,关键是校验.困扰了我2天,最后通过查找资料和"运气"终于解决了.解决问题关键点:vue的 ...

  2. vue + element ui 表格自定义表头,提供线上demo

    前言:工作中用到 vue+element ui 的前端框架,需要使用自定义表头,需要使用 re.转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9710826.h ...

  3. vue+element ui 的tab 动态增减,切换时提示用户是否切换

    前言:工作中用到 vue+element ui 的前端框架,动态添加 Tab,删除 Tab,切换 Tab 时提示用户是否切换等,发现 element ui  有一个 bug,这里记录一下如何实现.转载 ...

  4. Vue+element ui table 导出到excel

    需求: Vue+element UI table下的根据搜索条件导出当前所有数据 参考: https://blog.csdn.net/u010427666/article/details/792081 ...

  5. Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)

    Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成) 动态表单生成 ElementUI官网引导 Element表单生成 Element动态增减表单,在线代码 关键配置 templa ...

  6. vue + element ui 实现实现动态渲染表格

    前言:之前需要做一个页面,能够通过表名动态渲染出不同的表格,这里记录一下.转载请注明出处:https://www.cnblogs.com/yuxiaole/p/9786326.html 网站地址:我的 ...

  7. 基于vue(element ui) + ssm + shiro 的权限框架

    zhcc 基于vue(element ui) + ssm + shiro 的权限框架 引言 心声 现在的Java世界,各种资源很丰富,不得不说,从分布式,服务化,orm,再到前端控制,权限等等玲琅满目 ...

  8. vue+element ui 的表格列使用组件

    前言:工作中用到 vue+element ui 的前端框架,有这个场景:很多表格的列有许多一样的,所以考虑将列封装为组件.转载请注明出处:https://www.cnblogs.com/yuxiaol ...

  9. 基于 vue+element ui 的cdn网站(多页面,都是各种demo)

    前言:这个网站持续更新中...,有网上预览,github上也有源码,喜欢记得star哦,欢迎留言讨论. 网站地址:我的个人vue+element ui demo网站 github地址:yuleGH g ...

  10. 分享一个自搭的框架,使用Spring boot+Vue+Element UI

    废弃,新的:https://www.cnblogs.com/hackyo/p/10453243.html 特点:前后端分离,可遵循restful 框架:后端使用Spring boot,整合了aop.a ...

随机推荐

  1. 聊聊Cola-StateMachine轻量级状态机的实现

    背景 在分析Seata的saga模式实现时,实在是被其复杂的 json 状态语言定义文件劝退,我是有点没想明白为啥要用这么来实现状态机:盲猜可能是基于可视化的状态机设计器来定制化流程,更方便快捷且上手 ...

  2. Application of Permutation and Combination

    Reference https://www.shuxuele.com/combinatorics/combinations-permutations.html Online Tool https:// ...

  3. Supervisor启动并管理Celery相关进程

    Supervisor启动并管理Celery相关进程 关于celery在运行过程中, 默认情况下是无法在关机以后自动重启的.所以我们一般开发中会使用supervisor进程监控来对celery程序进行运 ...

  4. 自然语言处理(NaturalLanguageProcessing,NLP)领域的100篇热门博客文章标题如下:

    目录 文章标题:<自然语言处理(Natural Language Processing,NLP)领域的100篇热门博客文章标题如下> 背景介绍: 随着人工智能技术的不断发展和普及,自然语言 ...

  5. 使@schedule支持多线程的配置类

    package com.longshine.goverquartz.core.config;import org.springframework.boot.autoconfigure.batch.Ba ...

  6. vue3 安装 3d-force-graph

    1.首先创建vue3的项目 2.创建好后通过开发工具打开项目并打开命令行,输入指令 npm install 3d-force-graph 安装即可 3.在使用的页面中引入 3d-force-graph ...

  7. unity前后端通信

    1. 配置请求体中的Json字符串 1 request_data = new RequestBodyClass(); 2 request_data.a = "Json第一个字段"; ...

  8. SEO相关配置 HTML meta标签总结与属性使用介绍

    HTML meta标签总结与属性使用介绍 <!-- 声明文档使用的字符编码 --> <meta charset='utf-8'> <!-- 优先使用 IE 最新版本和 C ...

  9. 懒人的百宝箱「GitHub 热点速览」

    本周 GitHub Trending 除了 lazydocker 之外,还有多个 lazy 项目上线,比如大家熟悉的 lazyvim,可见,这个世界对懒人还是很友好的.除此之外,主打一个密码免输入,绕 ...

  10. [爬虫]1.2.2 CSS选择器

    CSS (Cascading Style Sheets) 是一种样式表语言,用于描述HTML元素的样式.CSS选择器是CSS规则的一部分,它决定了CSS规则应用于哪些元素.在网络爬虫的开发中,我们经常 ...