一、问题描述:使用extjs去请求后台数据的时候,返回json时,时间类型被转换成long型。如何解决?
所以在extjs中,显示不出来时间!
二、原因分析:后台在返回数据的时候出现了问题。没把对时间类型进行特殊的处理
三、解决方式:
a)使用@JsonFormat标签在get()方法上表明你要返回的格式
@JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss",timezone="GMT+8")
b)在前端使用Ext.util.Format.dateRenderer(‘Y/m/d H:i:s’)。接受
{text: '创建时间',sortable:true ,dataIndex:'createTime' ,width:125,
renderer:Ext.util.Format.dateRenderer('Y/m/d H:i:s')},
第二种解决方法:
在extjs中将long型时间戳转化成时间类型
columns: [
{text: 'ID' ,sortable:true ,dataIndex:'id',hidden:true},
{text: '订单编号' ,sortable:true ,dataIndex:'orderNumber' ,width:120},
{text: '创建时间' ,sortable:true ,dataIndex:'createTime' ,width:125,
//renderer:Ext.util.Format.dateRenderer('Y/m/d H:i:s')
renderer:function(time){
return Ext.util.Format.date(new Date(time),'Y/m/d H:i:s');
}},
{text: '优先级',sortable:true ,dataIndex:'level' ,width:125},
{text: '价格' ,sortable:true ,dataIndex:'price' ,flex:1}
],