【问题标题】:having a problem when converting firebase timestamp in standard format以标准格式转换 Firebase 时间戳时出现问题
【发布时间】:2019-05-10 07:41:02
【问题描述】:

我收到以下错误:

对象作为反应孩子无效(发现于 2019 年 5 月 9 日 17:25:13 GMT + 0500(PKT))。如果你打算渲染一组孩子,请使用 一个数组来代替

我的代码:

<Body>
 <Text style={{ fontSize: 18 }}>
 {this.item.timestamp.toDate()}
 </Text>
</Body>

【问题讨论】:

    标签: firebase react-native


    【解决方案1】:

    错误

    对象作为反应子对象无效

    表示您正在将一个对象传递给&lt;Text/&gt; 组件,但只允许使用字符串文字。

    您可以使用moment.js 来格式化/转换您的时间戳。

    你可以安装它:npm install moment

    如果您的时间戳以 unix 毫秒 为单位,您可以使用:

    import Moment from 'moment'; 
    ...
    <Text> {Moment(this.item.timestamp).format("MM/DD/YYYY")} </Text>
    

    如果您的时间戳以 unix 秒为单位,您可以使用:

    import Moment from 'moment'; 
    ...
    <Text> {Moment.unix(this.item.timestamp).format("MM/DD/YYYY")} </Text>
    

    工作示例:

    https://snack.expo.io/HkTGLnfn4

    【讨论】:

    • 我的时间戳就像时间戳(second=1557404713,nanoseconds=532000000)
    • @ImranAli 如果我的回答对您有所帮助,请点赞并将我的回答标记为已接受(为此,请单击我的回答旁边的复选图标)。谢谢
    猜你喜欢
    • 2020-07-01
    • 2017-05-20
    • 2021-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-01-01
    • 2011-05-21
    • 1970-01-01
    相关资源
    最近更新 更多