如何将服务器时间戳(以毫秒为单位)写入Firestore

时间:2017-12-31 04:31:07

标签: javascript firebase google-cloud-firestore

我知道如何将服务器时间戳写为Firestore作为日期字符串

doc_ref.set({ts: firebase.firestore.FieldValue.serverTimestamp()});

但是如何将其unix时间戳存储为数字呢?这甚至可能吗?我需要能够在Algolia镜像我的Firestore文档的一部分,我不相信我可以通过时间戳字符串对Algolia索引进行排序。

2 个答案:

答案 0 :(得分:6)

它没有作为字符串存储在文档中 - 它只是serverTimestamp在控制台中呈现的方式。如果您更仔细地检查ts字段,您会发现它的类型为"时间戳"。当您通过单击来编辑控制台中的值时,您将看到类型清楚地显示为日期类型的值。当你把它读回来(在JavaScript中)时,你会得到一个Date对象,你可以从那里得到基于时间的unix时间。

答案 1 :(得分:2)

尝试一下

firebase.firestore.Timestamp.now().toMillis()