到处搜索,但找不到任何解决方案或答案。我可以使用以下代码获取时间戳:
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/