elementUI的表格初始化比较简单,声明prop值对应的字段名即可。

而在实际应用中,我们常常有这种需求:从服务器获取的数据并不是我们要显示的最终结果,涉及一些状态、类型、日期时间等的转换,这时候我们就需要用elementUI表格组件的formatter属性,来进行数据转换了。

以下给出一个例子,很是简单明了,代码如下:

<template>
<el-table ref="myTable" :data="tableData" stripe style="width: 100%">
<el-table-column align="center" prop="userName" label="用户名" width="120" show-overflow-tooltip></el-table-column>
<el-table-column align="center" prop="mobilePhone" label="联系方式" width="120" show-overflow-tooltip></el-table-column>
<el-table-column align="center" prop="company" label="公司所属" show-overflow-tooltip></el-table-column>
<el-table-column align="center" prop="time" :formatter="dateFormatter" label="入职日期" width="100"></el-table-column>
<el-table-column align="center" prop="remark" label="备注" width="100" show-overflow-tooltip></el-table-column>
<el-table-column align="center" prop="status" :formatter="statusFormatter" label="禁用" width="100"></el-table-column>
</el-table>
</template>
<script>
export default {
data() {
return {
tableData: [
{id: 1, userName: '张三', mobilePhone: 15812356789, company: '某某软件有限公司', time: 1535379319240, remark: '备注信息', status: 0},
{id: 2, userName: '李四', mobilePhone: 15812356666, company: '某某软件有限公司', time: 1535479319240, remark: '备注信息', status: 0},
{id: 3, userName: '王五', mobilePhone: 15812357777, company: '某某软件有限公司', time: 1535579319240, remark: '备注信息', status: 0},
{id: 4, userName: 'Lena', mobilePhone: 15812358888, company: '某某软件有限公司', time: 1535679319240, remark: '备注信息', status: 0},
{id: 5, userName: 'Sally', mobilePhone: 15812359999, company: '某某软件有限公司', time: 1535779319240, remark: '备注信息', status: 1},
{id: 6, userName: 'Thomas', mobilePhone: 15812357788, company: '某某软件有限公司', time: 1535879319240, remark: '备注信息', status: 1}
]
}
},
methods: {
// 日期格式化
dateFormatter (row, column) {
let datetime = row.time;
if(datetime){
datetime = new Date(datetime);
let y = datetime.getFullYear() + '-';
let mon = datetime.getMonth()+1 + '-';
let d = datetime.getDate();
return y + mon + d;
}
return ''
},
// 禁用状态格式化
statusFormatter(row, column) {
let status = row.status;
if(status === 0){
return '否'
} else {
return '是'
}
}
}
}
</script>

给formatter属性传入调用的方法名,就会在初始化表格的时候调用这个方法转换显示的数据了。

效果图如下:

ElementUI动态表格数据转换formatter的更多相关文章

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

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

  2. element ui的表格列设置fixed后做动态表格出现表格错乱

    最近使用element-UI时,使用table做动态表格,当操作列使用fixed时,动态切换表格列设置设置时就会出现错乱,情况如下: 解决方法: 把el-table-column上的key设成一个随机 ...

  3. 在<s:iterator>标签里给动态表格添加序号

    在<s:iterator>标签里给动态表格添加序号,需要用到<s:iterator>标签里的Status属性里的count eg:<s:iterator value=&q ...

  4. HTML5&CSS3经典动态表格

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  5. 5.11-5.15javascript制作动态表格

    制作动态表格的主要是运用js中表格类的insertRow.insertCell简易添加行和列的代码,不过要注意每行添加的表格是有位置行编号的,每行的编号为rows.length-1,增加的表格内的标签 ...

  6. vue+element-ui实现表格checkbox单选

    公司平台利用vue+elementui搭建前端页面,因为本人第一次使用vue也遇到了不少坑,因为我要实现的效果如下图所示 实现这种单选框,只能选择一个,但element-ui展示的是多选框,check ...

  7. jQuery的下面是动态表格动态表单中的HTML代码

    动态表格动态表单中的Jquery代码 <script type="text/javascript" src="/include/jquery/jquery-1.1. ...

  8. JavaScript 创建动态表格

    JavaScript 创建动态表格 版权声明:未经授权,严禁转载! 案例代码 <div id="data"></div> <script> va ...

  9. Java利用poi生成word(包含插入图片,动态表格,行合并)

    转(小改): Java利用poi生成word(包含插入图片,动态表格,行合并) 2018年12月20日 09:06:51 wjw_11093010 阅读数:70 Java利用poi生成word(包含插 ...

随机推荐

  1. flutte的第一个hello world程序

    用命令行创建项目: flutter create flutterdemo VSCode或者AS连接手机后 输入 flutter run 编译后就可以将默认的代码显示在手机上了 开始写hello wor ...

  2. shell编程系列11--文本处理三剑客之sed利用sed删除文本中的内容

    shell编程系列11--文本处理三剑客之sed利用sed删除文本中的内容 删除命令对照表 命令 含义 1d 删除第一行内容 ,10d 删除1行到10行的内容 ,+5d 删除10行到16行的内容 /p ...

  3. shell编程系列3--命令替换

    shell编程系列3--命令替换 命令替换 命令替换总结 方法1 `command` 方法2 $(command) 例子1: 获取系统的所有用户并输出 for循环能以空格.换行.tab键作为分隔符 [ ...

  4. 002-05-RestTemplate 使用常见问题-非200请求捕获

    一.概述 1.1.RestTemplate报错时时获取不到错误信息 捕获异常后 try { result = restTemplate.postForEntity(faceConfig.getApiU ...

  5. 【439】Tweets processing by Python

        参数说明: coordinates:Represents the geographic location of this Tweet as reported by the user or cl ...

  6. LinkedHashMap和hashMap和TreeMap的区别

    推荐博客:https://www.jianshu.com/p/8f4f58b4b8ab 区别: LinkedHashMap是继承于HashMap,是基于HashMap和双向链表来实现的. HashMa ...

  7. 鼠标滚动事件onscroll在firefox/chrome/Ie中执行次数的问题处理

    需要写一个滚动条滑动加载图片的程序,研究了一下onscroll在不同浏览器里的执行次数,分别如下: var i=0; E.addHandler(window, 'scroll', function() ...

  8. UML学习笔记:活动图

    UML学习笔记:活动图 活动图 活动图是UML中描述系统动态行为的图之一,用于展现参与行为的类的活动或动作.在UML里,活动图很类似于流程图,但是有一些区别: 活动图着重表现系统行为,描述对象活动的顺 ...

  9. 基于TreeSoft实现异构数据同步

    一.为了解决数据同步汇聚,数据分发,数据转换,数据维护等需求,TreeSoft将复杂的网状的同步链路变成了星型数据链路.     TreeSoft作为中间传输载体负责连接各种数据源,为各种异构数据库之 ...

  10. [计算机视觉][ARM-Linux开发] Ubuntu14.04安装OpenCV3.2中遇到的问题的解决方案

    2. ubuntu下,opencv3.x安装一直downloading这个包,要看超时信息里的下载路径,把它放到下载路径中,比如我的opencv3.2.0源文件路径为/home/han/softwar ...