如何将Firestore时间戳转换为Dart DateTime

时间:2019-07-22 20:51:50

标签: flutter dart google-cloud-firestore

我正在将QuerySnapshot从Firestore映射到我的Dart类之一。返回的字段之一作为时间戳存储在Firestore中,我需要将其映射到模型中的DateTime。

在下面的代码段中,由于UserTask.dueDate是DateTime对象,因此在“ dueDate”上出错。

return querySnapshot.documents
    .map((doc) => UserTask(
          doc.data['id'],
          doc.data['dueDate'],
        ))
    .toList();

我知道我可以按照以下两个步骤来做:Timestamp ts = d [“ date”];日期= ts.toDate();由于这里的答案是How Do I convert Stream<QuerySnapshot> to List<myObject>。但是在上述情况下我该怎么办?

1 个答案:

答案 0 :(得分:0)

您可以:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>

<p>Testing...</p>

<script src="jquery.js"></script>
<script src="Test.js"></script>
</body>
</html>

return querySnapshot.documents
    .map((doc) => UserTask(
          doc.data['id'],
          doc.data['dueDate'].toDate(),
        ))
    .toList();