5

我正在做一个 firebase 项目,为了显示时间和实体,我得到的是时间戳。我正在做一个反应原生项目。如何将收到的时间戳转换为格式正确的日期。这是时间戳:

在此处输入图像描述

我有这个时间可用this.props.time,所以我尝试this.props.time.toDate()了,但我得到的是一个错误。 Invariant Violation:Objects are not valid as a React child(found: Tue Nov 26 2019 11:51:58 GMT+05:30(Indian Standard Time))

4

4 回答 4

7

您可以创建一个Date 对象new Date(time.seconds * 1000 + time.nanoseconds/1000000)然后按照您想要的方式对其进行操作。

于 2019-11-26T08:38:53.263 回答
1

如果您从文档中检索数据,您可以这样做:

// time.toDate()
convertDate(doc.data().time.toDate())

const convertDate = (date) => {
    // whatever formatting you want to do can be done here
    var d = date.toString()
    return d.substr(0, 21);
}
于 2019-11-26T07:43:05.030 回答
1

您可以使用https://momentjs.com/来显示

{moment(yourTimestamp.toDate()).format( **** 格式在上面的链接中)}

于 2019-11-26T08:38:56.790 回答
1

正确的: new Date(time.seconds * 1000 + time.nanoseconds/1000000)

不正确: new Date(time.seconds * 1000 + time.nanoseconds/1000)

因为, 在此处输入图像描述

于 2020-03-31T08:39:04.117 回答