这篇文章主要介绍“vue怎么格式化element表格中的时间为指定格式”,在日常操作中,相信很多人在vue怎么格式化element表格中的时间为指定格式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”vue怎么格式化element表格中的时间为指定格式”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
在vue表格中如果直接绑定时间字段默认显示格式一般为:yyyy-MM-dd HH:mm:ss,但有时候只需要显示 年月日 或者 时分秒,这时我们就可以用到过滤器(filter)
vue 基础表格
<el-table :data="tableData" > <el-table-column prop="date" label="日期" width="180"></el-table-column> <el-table-column prop="name" label="姓名" width="180"></el-table-column> </el-table>
使用过滤器的写法
<el-table :data="tableData" > <el-table-column label="日期" width="180"> <template slot-scope="scope"> <span>{{ scope.row.date | FormatDate('HH:mm:ss') }}</span> </template> </el-table-column> <el-table-column prop="name" label="姓名" width="180"></el-table-column> </el-table>
这里把时间转换成 年:月:日 格式
过滤器的定义方式
在 main.js 中定义一个时间过滤器
// main.jsfunction formatDate(date, fmt) { date = new Date(date); if (typeof(fmt) === "undefined") { fmt = "yyyy-MM-dd HH:mm:ss"; } if (/(y+)/.test(fmt)) { fmt = fmt.replace(RegExp.$1, (date.getFullYear() + '').substr(4 - RegExp.$1.length)) } let o = { 'M+': date.getMonth() + 1, 'd+': date.getDate(), 'H+': date.getHours(), 'm+': date.getMinutes(), 's+': date.getSeconds() } for (let k in o) { if (new RegExp(`(${k})`).test(fmt)) { let str = o[k] + '' fmt = fmt.replace(RegExp.$1, RegExp.$1.length === 1 ? str : ('00' + str).substr(str.length)); } } return fmt}; //定义一个时间过滤器Vue.filter("FormatDate", function(date, fmt) { return formatDate(date, fmt);});
到此,关于“vue怎么格式化element表格中的时间为指定格式”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注编程网网站,小编会继续努力为大家带来更多实用的文章!