如何将Firestore时间戳更改为“ 2天前或1小时前”?我尝试直接显示它,但是输出的数据是一个像Timestamp(seconds=1556459022, nanosecond=0)
这样的字符串。
该怎么做?
答案 0 :(得分:3)
这就是我的解决方法。导入以下软件包:
import 'package:timeago/timeago.dart' as timeago;
现在,从Firestore获取时间戳。例如,对于字段名称“ timestamp”,请参考以下代码:
final document = Firestore.instance.collection("yourCollectionName").snapshots();
现在使用以下命令访问您的时间戳记:
`Timestamp timestamp = document['timestamp'];
最后,在应用程序中显示结果。示例:
Text(timeago.format(DateTime.tryParse(timestamp.toDate().toString())).toString());
答案 1 :(得分:0)
Firestore的时间戳记有一个toDate()
方法,该方法将返回飞镖DateTime
对象。
由此,您可以使用常规的飞镖解决方案,例如DateFormat
或timeago
库,将其显示为:
timeago.format(firestoreTimestamp.toDate());