首页 > 解决方案 > 如何将时间戳添加为 Firebase 键

问题描述

我想在firebase中添加一个时间戳作为自定义键但是我不能添加它,因为它总是给我一个错误。

这就是我插入数据库的方式。

db.ref('items/').child(timestamp).set({
       name: item,
       type: type,
   })

这就是我获取时间戳的方式: firebase.database.ServerValue.TIMESTAMP

我得到的错误是 Reference.child failed: First argument is an invalid path="[object Object]"。路径必须是非空字符串,并且不能包含 .、#、$、[ 或 ]。

我不明白这里发生了什么,如果我将相同的时间戳添加为一个孩子的值,它会毫无问题地添加它

标签: firebasereact-nativefirebase-realtime-database

解决方案


文档中所述,您获得的值firebase.database.ServerValue.TIMESTAMP是一个 Object 但您必须将 String 传递给该child()方法。

这是错误消息所指示的:

Reference.child 失败:第一个参数是无效路径 =“[object Object]”。路径必须是非空字符串,并且不能包含 .、#、$、[ 或 ]。

您可以在前端生成时间戳并将其传递给child()方法,请参阅如何在 JavaScript 中获取时间戳?


此外,请注意ServerValue.TIMESTAMP“用于自动填充当前时间戳的占位符值......由 Firebase 服务器确定”。这意味着您不能getTime()在前端调用 JavaScript 方法(例如 )。


推荐阅读