我有我的API,并且我使用HTTP GET
来获取它,我使用模型 Alert 投射了信息,如果其中包含Date
类型的时间戳,我使用Date类型运行DataTable可以对列进行排序,但是这里的问题是我正在获得以下格式的格式
2018年9月3日星期一01:56:36 GMT-0700(太平洋夏令时间(墨西哥))
当我尝试使用像09/03/2018 01:56:36
这样的格式化日期时,如果我使用这种格式运行数据表,则排序将不起作用,因为它按 String 而不是 Date
我的问题是:如何将日期类型格式化为MM/DD/YYYY hh:mm:ss
?
注意:我使用ng2-smart-table作为Datable
答案 0 :(得分:2)
您可以为任何字段声明预渲染功能valuePrepareFunction
。
因此,您可以直接导入DatePipe:
import { DatePipe } from '@angular/common';
并在new DatePipe('en-US').transform(date, 'your-format-here');
声明内返回valuePrepareFunction
答案 1 :(得分:1)
不格式化日期。让它作为时间戳,并使用valuePrepareFunction
来转换格式化日期中的时间戳。
如果已经在执行此操作,那么我可以看到排序使用的是准备好的值,而不是原始值。
在这种情况下,排序时请使用compareFunction
再次转换时间戳中的日期。