javascript - 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 字符串(您可以将其格式化为时刻以及在其主页上显示),并简单地查询是否相等:
admin.firestore()
.collection("orders")
.where("dueDate", "==", "2020-08-02")
.get()
推荐阅读
- amazon-web-services - 为什么堡垒主机更安全?
- mysql - ASP 中的文本框到 MySql
- python - 在 Python 中打开浏览器时发布数据
- ruby - Ruby 1.8.7 仍然如此广泛使用是否有原因?
- c# - 如何对从捆绑资源加载的图像应用色调?
- sql-server - 如何在 Windows 10 应用和功能中卸载 SQL Server 2016(64 位)
- javascript - Yii2 - 在表单中使用引导选项卡,其他选项卡中的必填字段卡住表单保存
- sql - 如何在 PostgreSQL 中创建临时表?
- wordpress - WordPress - 在受密码保护的页面中输入密码,但页面不断重定向回输入密码
- reactjs - package.json 中的 JEST