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. kinova roslaunch j2s7s300_moveit_config j2s7s300_demo.launc logs1

    luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ luo@luo-ThinkPad-W530:~$ ...

  2. Qt编写气体安全管理系统21-探测器管理

    一.前言 探测器在整个系统中是最核心的关键的硬件,终端节点硬件,安装有探测芯片装置,负责探测前端对应气体浓度,并记录值,等待控制器轮训数据回复,控制器信息表也是字段最多的,要存储位号.控制器名称.探测 ...

  3. Python初级 3 基本数学运算

    一. 四大基本运算操作符 1 加+ print(3 + 2) 2 减- print(3 - 2) 3 乘:* print(3 * 2) 4 除/, // print(3 / 2) print(3 // ...

  4. C#DbHelperOleDb,Access数据库帮助类 (转)

    /// <summary>/// 编 码 人:苏飞/// 联系方式:361983679  /// 更新网站:[url=http://www.sufeinet.com/thread-655- ...

  5. springboot 整合 Froala Editor 3

    springboot项目中使用 Froala Editor 3,参考官网文档:https://www.froala.com/wysiwyg-editor/docs/overview 下载文件后,引入c ...

  6. mysql的驱动类com.mysql.jdbc.Driver过时了,需要用com.mysql.cj.jdbc.Driver代替

    springboot项目整合mybatis,配置文件如下: server: port: 8081 mybatis: config-location: classpath:mybatis/mybatis ...

  7. Python3之内建模块hashlib

    摘要算法简介 Python的hashlib提供了常见的摘要算法,如MD5,SHA1等等. 什么是摘要算法呢?摘要算法又称哈希算法.散列算法.它通过一个函数,把任意长度的数据转换为一个长度固定的数据串( ...

  8. Python3 IO编程之序列化

    在程序运行的过程中,所有变量都是在内存中,比如定义一个dict >>> d=dict(name='Box',age=20,score=11) 可以随时修改变量,比如把'name'改成 ...

  9. RocketMQ控制台命令

    本文未完成,有空再补充,不小心发布了,抱歉 Rocket版本:4.3.0 这几天在整RocketMQ,可谓是困难重重,其中关于控制台的命令,网上的都是一半一半的, 所以我打算直接用整一个完整的官方的命 ...

  10. sql 表的连接与查找

    A.left outer join: 左外连接(左连接):结果集几包括连接表的匹配行,也包括左连接表的所有行. SQL: select a.a, a.b, a.c, b.c, b.d, b.f fro ...