ElementUI动态表格数据转换formatter
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的更多相关文章
- Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成)
Vue+Element的动态表单,动态表格(后端发送配置,前端动态生成) 动态表单生成 ElementUI官网引导 Element表单生成 Element动态增减表单,在线代码 关键配置 templa ...
- element ui的表格列设置fixed后做动态表格出现表格错乱
最近使用element-UI时,使用table做动态表格,当操作列使用fixed时,动态切换表格列设置设置时就会出现错乱,情况如下: 解决方法: 把el-table-column上的key设成一个随机 ...
- 在<s:iterator>标签里给动态表格添加序号
在<s:iterator>标签里给动态表格添加序号,需要用到<s:iterator>标签里的Status属性里的count eg:<s:iterator value=&q ...
- HTML5&CSS3经典动态表格
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 5.11-5.15javascript制作动态表格
制作动态表格的主要是运用js中表格类的insertRow.insertCell简易添加行和列的代码,不过要注意每行添加的表格是有位置行编号的,每行的编号为rows.length-1,增加的表格内的标签 ...
- vue+element-ui实现表格checkbox单选
公司平台利用vue+elementui搭建前端页面,因为本人第一次使用vue也遇到了不少坑,因为我要实现的效果如下图所示 实现这种单选框,只能选择一个,但element-ui展示的是多选框,check ...
- jQuery的下面是动态表格动态表单中的HTML代码
动态表格动态表单中的Jquery代码 <script type="text/javascript" src="/include/jquery/jquery-1.1. ...
- JavaScript 创建动态表格
JavaScript 创建动态表格 版权声明:未经授权,严禁转载! 案例代码 <div id="data"></div> <script> va ...
- Java利用poi生成word(包含插入图片,动态表格,行合并)
转(小改): Java利用poi生成word(包含插入图片,动态表格,行合并) 2018年12月20日 09:06:51 wjw_11093010 阅读数:70 Java利用poi生成word(包含插 ...
随机推荐
- shell编程系列9--文本处理三剑客之sed概述及常见用法总结
shell编程系列9--文本处理三剑客之sed概述及常见用法总结 sed的工作模式:对文本的行数据一行行处理,如下图 sed(stream editor),是流编辑器,依据特定的匹配模式,对文本逐行匹 ...
- C++11智能指针之std::unique_ptr
C++11智能指针之std::unique_ptr uniqut_ptr是一种对资源具有排他性拥有权的智能指针,即一个对象资源只能同时被一个unique_ptr指向. 一.初始化方式 通过new云 ...
- window.location.href重定向失败的问题
如题,在js中通过window.location.href=URL来跳转到另一个页面(也可以是另一个项目的另一个页面). 打开的页面地址是:www.a.com/project1/index 要跳转的页 ...
- Java socket详解
参考 https://www.jianshu.com/p/cde27461c226 刚给大家讲解Java socket通信后,好多童鞋私信我,有好多地方不理解,看不明白.特抽时间整理一下,详细讲述Ja ...
- Spring cloud微服务安全实战-4-9Zuul网关安全开发(二)
把在微服务里面写的安全的相关逻辑挪到网关里面来.这样把安全逻辑和业务逻辑解耦开.那么这些问题就都解决了. 先来看下之前的安全的代码,首先在之类做了认证,认证服务器去认证,拿这个token去换用户信息. ...
- 算法习题---5-5复合词(UVa10391)
一:题目 输入一系列由小写字母组成的单词.输入已按照字典序排序,且不超过120000个.找出所有的复合词,即恰好由两个单词连接而成的单词 (一)样例输入 a alien born less lien ...
- 把github代码自动部署到服务器
一.参考文献 https://developer.github.com/webhooks/ https://docs.gitlab.com/ee/user/project/integrations/w ...
- SqlServer里,一条sql进行递归删除
Server 2005中提供了公用表表达式(CTE),使用CTE,可以使SQL语句的可维护性,同时,CTE要比表变量的效率高得多. 存储过程方法: create proc up_delete_ncla ...
- Node.js 服务端图片处理利器
sharp 是 Node.js 平台上相当热门的一个图像处理库,其实际上是基于 C 语言编写 的 libvips 库封装而来,因此高性能也成了 sharp 的一大卖点.sharp 可以方便地实现常见的 ...
- DSOFramer 控件(转)
1.Html电子印章.手写签名系统演示:http://www.dianju.com.cn/video.htm在线试用:http://www.dianju.com.cn/websignpiaoju/ht ...