firebase 使用 ISOString 但只取日期

熊大叔

所以我正在编写 firebase 命令,如果 firebase 字段中的日期与我确定的变量相等,则该命令会获取一些文档。

我的 firebase 中所有与日期相关的字段总是被转换toISOString

const today = moment().toISOString();

admin.firestore()
     .collection("orders").where("dueDate", "==", today)
     .get()

但后来我注意到,如果我正在执行isEqual我的 where 函数,只想从特定日期获取文档,那么我将无法获取它,因为toISOString包含小时、分钟、秒。像这样

2020-08-02T19:14:22.104562

如果我想把所有文件放在

2020-08-02

我怎么做?

道格史蒂文森

使用您现在拥有的数据:

admin.firestore()
    .collection("orders")
    .where("dueDate", ">=", "2020-08-02")
    .where("dueDate", "<", "2020-08-03")
    .get()

另一种选择(并且可能更好)是存储日期的 YYYY-MM-DD 字符串(您可以使用 moment 对其进行格式化以及在其主页上显示),并简单地查询其是否相等:

admin.firestore()
    .collection("orders")
    .where("dueDate", "==", "2020-08-02")
    .get()

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

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

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章