javascript - 我如何获得负时间戳以保存在 firebase - Javascript

标签 javascript firebase firebase-realtime-database

到处搜索,但找不到任何解决方案或答案。我可以使用以下代码获取时间戳:

var timestamp = firebase.database.ServerValue.TIMESTAMP;

但我想存储负时间戳以用于排序目的。我如何获得它?

当我尝试将它与 -1 相乘时,它给出了 NaN 错误,因为它是一个对象。怎么办?

最佳答案

当数据集太大而无法反向客户端时,负时间戳很有用。

Firebase 服务器时间戳是一个在数据保存后转换为数字的对象。因此,需要保存正时间戳,在初次推送后将其转换为负时间戳。这是一个经过验证的工作示例。

  let timestamp = firebase.database.ServerValue.TIMESTAMP
  const promise = firebase.database().ref().child('posts').push({ timestamp })
  const key = promise.key

  promise.then(_ => {
    const postRef = firebase.database().ref('/posts/' + key)
    postRef.once('value').then(function(snapshot) {
      timestamp = snapshot.val().timestamp * -1
      postRef.update({ timestamp })
    });
  })

关于javascript - 我如何获得负时间戳以保存在 firebase - Javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45880387/

相关文章:

java - 从 firebase 检索的数据始终为空

swift - 即使数据存在,Firebase 查询也会返回 null

javascript - 如何确保只有一个复选框保持选中状态?

javascript - 迭代此响应

ios - 同步调度不起作用?

firebase - 我可以在 Firebase 中实现 channel 的概念吗?

javascript - 为什么在这种情况下使用 IIFE?

javascript - 在 Angular2 中单击时隐藏 Div

python - 如何在 Firebase 中循环 UID

javascript - 如何检查 Firebase Web 中的身份验证过程是否没有错误?