从 firebase.firestore.Timestamp.now() 中减去一周?

米卡西奥

我将如何从firebase.firestore.Timestamp.now()时间戳中减去一周我有不同的带有时间戳的文档,我需要构建一个函数来检查这些文档中是否有任何文档的时间戳早于 7 天。哎呀,也许有一个内置函数来检查日期是否“过期”?提前致谢。

编码员

作为定义在这里

firebase.firestore.Timestamp.now()

相当于

firebase.firestore.Timestamp.fromMillis(Date.now())

要获得一周前的时间戳,您可以使用:

// 1 week in ms = 1000 * 60 * 60 * 24 * 7 = 604800000

const nowTimestamp = firebase.firestore.Timestamp.now();
const weekOldTimestamp = firebase.firestore.Timestamp.fromMillis(nowTimestamp.toMillis() - 604800000);
// or the shorter
const weekOldTimestamp = firebase.firestore.Timestamp.fromMillis(Date.now() - 604800000);

假设您在名为 的集合中有以下文档/photos

{
  "title": "My Photo",
  "desc": "This is the first photo I uploaded here",
  "storageRef": "/userData/userid1/uploads/89q24u2q98y23.png",
  "thumbnailRef": "/userData/userid1/uploads/89q24u2q98y23.thumbnail.png",
  "createdAt": FieldValue.serverTimestamp(),
}

如果要查找一周前的所有照片,可以使用以下相同语句之一:

firebase.firestore().collection("photos")
  .where("createdAt", "<", new Date(Date.now() - 604800000))
  .get()

const weekAgoTimestamp = firebase.firestore.Timestamp.fromMillis(Date.now() - 604800000);

firebase.firestore().collection("photos")
  .where("createdAt", "<", weekAgoTimestamp)
  .get()

如果您已经拥有该文档的副本,请从这样的查询中获取:

const aPhotoSnapshot = await firebase.firestore()
  .doc("photos/somePhotoId")
  .get();

并且您想检查它是否超过一周,您可以使用:

const createdAtTimestamp = aPhotoSnapshot.get("createdAt");
const isWeekOld = createdAtTimestamp.toMillis() < Date.now() - 604800000;

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

firebase.firestore.Timestamp toDate() 上的异常

Pandas.Timestamp.now 中的 UnknownTimeZoneError

如何从Firebase Cloud Function访问firestore.Timestamp

在Firestore查询中实施OR-Firebase Firestore

Javascript-如何从Firebase Firestore时间戳中减去月份?

MySQL中SYSDATE(),NOW(),CURRENT_TIMESTAMP,CURRENT_TIMESTAMP()之间的区别?

在Firebase Firestore中显示换行

Firebase / firestore中的时间戳

Firebase Firestore 中的嵌套查询

如何从Firebase TimeStamp [Flutter]中检索时间?

setText firebase TimeStamp 到 Android 中的 TextView

我们如何使用Angular通过TimeStamp数据类型对Firebase Firestore数据进行排序?

如何在Android Java中序列化Firestore TimeStamp?

如何从云功能更新firestore文档中的timeStamp字段?

在Firestore中通过TimeStamp通过和传递项目以进行Swift

如何使用Firestore TIMESTAMP在JavaScript中创建时间戳

检查Firebase Firestore中的数据中的值

减少阅读Firebase Firestore集合中的文档

从Firebase Firestore检索recyclerview中的图像

Firebase:在反应中从 Firestore 读取数据

如何在 Firebase 中更改 Firestore 规则

从 Firestore 中检索数据 - Firebase - Flutter

在Firebase Firestore中查询时出错

Firestore移至Firebase函数中的时间戳记

在Firestore中参考Firebase用户对象

在Firebase Firestore中,哨兵是什么?

注册用户未显示在 Firebase Firestore 中

firebase firestore - 如何检查捕获中的错误

使用 NodeJs 在 Firestore Firebase 中获取 hasPendingWrites