解决layui数据表格Date日期格式的回显Object的问题
有属性: private Date createtime;
但是回显的时候,显示{ Object object },想要转换成字符串格式显示。
layui中显示:
在对应的实体类中添加属性:private String createtimestr;
然后添加对应的set/get方法,但是方法处理的是createtime
但是在Mybatis-plus框架映射时,数据库表里面又没有该字段,获取数据的时候会报异常,unknown field "createtimestr" in table ,
解决办法,在添加的属性上面添加注解 @TableField(exist = false)
用于表示表中没有该字段,不然报错。
最后就是
方法二:
在前端页面创建处理时间的函数:
<!--转换时间格式--> <script type="text/javascript"> function dateToStr(date) { var time = new Date(date.time); var y = time.getFullYear(); var M = time.getMonth() + 1; M = M < 10 ? ("0" + M) : M; var d = time.getDate(); d = d < 10 ? ("0" + d) : d; var h = time.getHours(); h = h < 10 ? ("0" + h) : h; var m = time.getMinutes(); m = m < 10 ? ("0" + m) : m; var s = time.getSeconds(); s = s < 10 ? ("0" + s) : s; var str = y + "-" + M + "-" + d + " " + h + ":" + m + ":" + s; console.log(str); return str; } </script>
然后再模板输出
{field: 'createtime', title: '发布时间',sort: true, minWidth: 100,templet:'<div>{{dateToStr(d.createtime)}}</div>'}
或者
{field: 'createtime', title: '发布时间',sort: true, minWidth: 100,templet:function (d) { return dateToStr(d.createtime); }}
还有就是,时间对象里面会有个 time 时间戳属性,可以通过 new Date(xxx.time),即可。
以上这篇解决layui数据表格Date日期格式的回显Object的问题就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。
赞 (0)