在 Flutter 中显示两个 Firestore 时间戳值之间的差异
Posted
技术标签:
【中文标题】在 Flutter 中显示两个 Firestore 时间戳值之间的差异【英文标题】:Display the difference between two Firestore Timestamp values in Flutter 【发布时间】:2021-04-08 17:49:18 【问题描述】:我在 Flutter(Dart) 中将 startdate 和 endDate 作为用户的输入,并将 DateTime 作为数据类型。这些字段将存储在 Firestore 中,可能是时间戳格式。 现在我们需要在客户端显示 endDate 和 startDate 的差异,它可以是一个实时计时器,格式为“13 Hrs 45 mins”,然后在几分钟后应该是“13 Hrs 42 mins”。
我可以知道我们如何使用 Firestore 或可能是 Flutter 应用程序的云功能来实现这一点吗? 谢谢
【问题讨论】:
【参考方案1】:在颤振中,Timestamp
可以很容易地转换为DateTime
,并且DateTime
有一个称为difference
的便捷方法,它可以将两个DateTime
对象之间的区别为Duration
对象。
这是一个简单的例子:
final Timestamp endTime = Timestamp(1000, 0);
final Timestamp startTime = Timestamp(500, 0);
final DateTime endTimeDate = endTime.toDate();
final DateTime startTimeDate = startTime.toDate();
final Duration difference = endTimeDate.difference(startTimeDate);
【讨论】:
谢谢。我以 DateTime 格式输入如下:- selectedStartDate = 2021-01-03 10:41:00.000 selectedEndDate = 2021-01-05 16:41:00.000 我得到的差异持续时间为:54:00:00.000000 所以我的最好的输出应该是 54 Hrs 00 mins。你能在这里帮忙怎么做吗? @Akshay 你可以这样做:***.com/questions/54775097/…以上是关于在 Flutter 中显示两个 Firestore 时间戳值之间的差异的主要内容,如果未能解决你的问题,请参考以下文章
Flutter Firestore:从 Firestore 中检索数据并在 Flutter 中显示为小部件
如何在 Flutter Firestore 提供程序中显示数据
Flutter 如何在 Firestore 中组合多个文档中的值以与列表中的相应卖家一起显示
在 Flutter 中的垂直 ScrollView 内的水平 ListView 中显示来自 Firestore 的数据