好的,所以这个问题已经被问到here但是,给出的解决方案似乎无法解决我的问题。
当我点击保存时,我会参考这些字段并创建一个日期,如下所示:
this.profile.date_of_birth = new Date(this.editProfileForm.value['year'], this.editProfileForm.value['month'], this.editProfileForm.value['day']);
登录控制台时会显示:
1988年12月23日星期五00:00:00 GMT + 1100(AEDT)
然后我调用运行在nodejs
的{{1}}应用程序,该应用程序获取数据并将其保存到http://localhost:3005
,然后保存,我记录date_of_birth的值如下所示:
mongodb
然而这记录:
1988-12-22T13:00:00.000Z
这是休息日....
我在用户按下保存时创建新日期之前没有进行任何格式化,因此我不确定为什么当它离开前端应用程序时,并且到达后端应用程序时显示日期不正确......
api.put('/update', authenticate, (req, res) => {
console.log(req.body.date_of_birth);
// Save properties
});
应用程序的实际调用位于:
nodejs
有人可以推荐可能出错的地方吗?
答案 0 :(得分:0)
Fri Dec 23 1988 00:00:00 GMT+1100 (AEDT)
是当前时区的日期。根据{{1}},您的服务器似乎正在使用UTC
。
您可以使用 Date.UTC 创建一个1988-12-22T13:00:00.000Z
的日期对象,该日期对象与您的服务器保持一致。
standart timezone of UTC