Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/date/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Reactjs 如何保存和搜索准确的日期? 安装程序_Reactjs_Date_Datepicker_Mongodb Atlas - Fatal编程技术网

Reactjs 如何保存和搜索准确的日期? 安装程序

Reactjs 如何保存和搜索准确的日期? 安装程序,reactjs,date,datepicker,mongodb-atlas,Reactjs,Date,Datepicker,Mongodb Atlas,我正在创建一个react应用程序来保存和检索MongoDb Atlas数据库中的每日报告。每个用户每天只能有一份报告。每日报告的搜索条件是课程日期 逻辑与代码 该应用程序有一个来自material ui datepicker的日历小部件。它返回所选日期和当前UTC时间。但是如果我直接使用它搜索数据库,那么很明显,我找不到任何东西,因为小时:分钟:秒:毫秒的差异。您正在搜索的日期()不可能与创建报表的时间精确匹配毫秒。因此,我的想法是存储每个报告的日期,精确时间为上午12点,即00:00:00:0

我正在创建一个react应用程序来保存和检索MongoDb Atlas数据库中的每日报告。每个用户每天只能有一份报告。每日报告的搜索条件是课程日期

逻辑与代码 该应用程序有一个来自material ui datepicker的日历小部件。它返回所选日期和当前UTC时间。但是如果我直接使用它搜索数据库,那么很明显,我找不到任何东西,因为小时:分钟:秒:毫秒的差异。您正在搜索的日期()不可能与创建报表的时间精确匹配毫秒。因此,我的想法是存储每个报告的日期,精确时间为上午12点,即00:00:00:000Z,并搜索数据库,搜索日期为上午12点

selectedDate.setUTCHours(0,0,0,0); //sets the time to 12am
selectedDate.toISOString(); 
问题 对于这个案例,这是正确的方法吗?我这样做会遇到问题吗?如果日期是搜索条件,并且必须精确匹配,则应如何存储该日期?它还必须为世界各地的任何用户提供保存和检索报告的服务

谢谢,
Suraj

您可以根据需要存储日期,只需在db查询中使用between条件即可

SELECT * FROM reports WHERE date BETWEEN '2020-05-01 00:00:00' AND '2020-05-01 23:59:59'