javascript - 如何将从 <input type ="datetime-local"> 收到的值转换为 firestore 格式?

标签 javascript html reactjs firebase google-cloud-firestore

在一个 React webapp 中,我有一个带有 <input type="datetime-local"> 的表单.

在 Windows 上的 chrome 版本 64 中返回的值采用以下格式:

2018-03-08T07:00

我假设在其他浏览器中会有所不同。

我想在 firestore 中写入此值,格式与我创建时生成的格式相同,使用 firestore 管理 GUI,类型为“timestamp”的字段,如下所示:

March 8, 2018 at 7:00:00 AM UTC+2

知道如何做到这一点以便它适用于所有浏览器吗?

最佳答案

Cloud Firestore 以 ISO8601 格式存储时间戳。如果您使用控制台添加时间戳,然后获取文档,将返回以下内容。

{"timestamp":"2018-03-16T15:45:36.000Z"}

我建议您将所有时间转换为通用格式,这样您的数据库中就不会出现不同的时间格式。一个很好的工具是 moment.js .我会推荐ISO8601格式,因为这是大多数(如果不是全部)浏览器、应用程序、数据库等普遍可读的格式。

关于javascript - 如何将从 &lt;input type ="datetime-local"> 收到的值转换为 firestore 格式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49316245/

相关文章:

reactjs - Cypress Tab键,测试由Tab键触发的React行为

javascript - 从服务器向客户端获取/获取数据时出现问题。 (客户端向服务器发送数据成功)

javascript - 我如何比较两个 X、Y 坐标数据集以寻找相似之处?

javascript - 使用 D3.js 在矩形上显示文本

javascript - 有一个 DIV 'stick' 用于 x 数量的卷轴

javascript - 如果 Canvas 上已经绘制了一些东西,如何通过跟随鼠标旋转 Canvas

css - Foundation 4 工具提示更改最高值

javascript - 文档加载时运行 javascript

javascript - 如何使用索引号而不是对象的 id 路由到各个页面?

reactjs - 与 getDerivedStateFromProps 中之前的 prop 进行比较