Flutter:如何按日期时间排序列表

时间:2021-07-28 16:07:52

标签: flutter

我有一个这样的列表:

var orderedEvents = [
{
 "realTime": "2021-07-28 12:00:02.000" // Flutter dateTime but saved as String
},
{
 "realTime": "2021-07-28 12:00:00.000"
},
{
 "realTime": "2021-07-28 12:00:01.000"
}
];

我这样做:

orderedEvents.sort((a, b) {
      final realTimeA = DateTime.parse(a["realTime"]);
      final realTimeB = DateTime.parse(b["realTime"]);
      return realTimeA.isBefore(realTimeB) ? -1 : 1;
    });

但是它没有正确地获得 0、2 和 1。

1 个答案:

答案 0 :(得分:1)

首先确保从字符串转换为日期时间。

之后,只需使用以下内容:

orderedEvents.sort((a,b) {
  final realTimeA = DateTime.parse(a["realTime"]);
  final realTimeB = DateTime.parse(b["realTime"]);
  return realTimeA.compareTo(realTimeB);
});
相关问题