在Dart中处理从云函数查询返回的时间戳

时间:2019-06-07 08:41:42

标签: firebase flutter dart google-cloud-firestore google-cloud-functions

我正在使用flutter,firestore和Google Cloud功能来构建移动应用程序。

一方面,我的一些Firestore查询是在客户端以dart代码执行的,如下所示:

T

现在这将返回一个文档列表,如果我在该文档中有一个时间戳字段,我可以调用Firestore.instance.collection(Collections.cars) .where('free', isEqualTo: free) .getDocuments(); -以便将Firestore时间戳转换为飞镖DateTime

另一方面,如果我在云函数中执行完全相同的操作并返回结果,然后在飞镖代码中使用该结果,则我的时间戳将为document.timestamp.toDate()类型,并包含两个字段_seconds和_nanoseconds以及我无法对其调用HashMap才能将其转换为飞镖中的.toDate()

我了解到,仅仅从云函数返回查询结果后,我就缺少了一些序列化步骤来获得与普通查询相同的结果,但是我想知道应该怎么做才能使同样的行为?

那么我可以在cloud函数的nodejs代码中做一些事情以更友好的方式返回时间戳,从而更轻松地转换为DateTime吗?

我可以遍历结果并将时间戳转换为nodejs Date,但我认为这不是最好的主意。

0 个答案:

没有答案