Firebase 在Firestore中保存持续时间的推荐方法是什么?

Firebase 在Firestore中保存持续时间的推荐方法是什么?,firebase,google-cloud-firestore,duration,Firebase,Google Cloud Firestore,Duration,我正试图在Firestore中节省一段时间。例如,一个用户已经做了4分44秒的练习。此信息的推荐数据类型是什么 如果Firestore增量操作符能够处理所使用的数据类型,那就太好了。我曾考虑过使用时间戳,但在Firebase SDK中,增量方法需要一个数字,而时间戳不是一个数字 在Firestore中保存持续时间的推荐方法是什么 因为您谈论的是持续时间,所以解决方案是将其存储为一个数字,特别是作为一个整数,这是一个数字。在您的示例中,4分44秒将存储为: 284 这是因为4*60+44=284

我正试图在Firestore中节省一段时间。例如,一个用户已经做了4分44秒的练习。此信息的推荐数据类型是什么

如果Firestore增量操作符能够处理所使用的数据类型,那就太好了。我曾考虑过使用
时间戳
,但在Firebase SDK中,增量方法需要一个数字,而
时间戳
不是一个数字

在Firestore中保存持续时间的推荐方法是什么

因为您谈论的是持续时间,所以解决方案是将其存储为一个数字,特别是作为一个
整数
,这是一个数字。在您的示例中,4分44秒将存储为:

284
这是因为4*60+44=284

如果您想返回小时数和分钟数,只需反转上述算法即可

如果Firestore增量操作符能够处理所使用的数据类型,那就太好了

Firestore已经提供了这样一个选项。例如,如果要在现有持续时间的基础上增加一小时,可以使用:

FieldValue.increment(60)
如果您想减少一小时,只需使用:

FieldValue.increment(-60)
我想用时间戳

时间戳不是持续时间。Firestore时间戳包含小到纳秒的时间单位。因此,Timestamp对象包含年、月、日、小时、分钟、秒、毫秒和纳秒。这不会以任何方式解决你的问题