示例代码如下:
Firebase Database
name: Sonich
when changed value
name: Sonita
FirebaseRef.on('value', function(snapshot) {
var previous_name= ?;//Sonich
var new_name = snapshot.val(); //Sonita
});
最佳答案
我猜你想在节点更改时检索节点以前的值。
Firebase 没有为此提供解决方案,您应该将之前的值存储在某处。
我的解决方案是将先前的值存储在节点的子节点上。你可以这样做:
1) 当您想要更新值时:
var new_name = "Sonich"
FireBaseRef.once('value', function(snapshot) {
var prev_name= snapshot.val(); // Sonta
FireBaseRef.set({
"value": new_name,
"prev_value": prev_name
})
});
2) 这样您就可以检索该值,如下所示:
FireBaseRef.on('value', function(snapshot) {
snapshot = snapshot.val()
var previous_name= snapshot.prev_value;//Sonich
var new_name = snapshot.value; //Sonita
});
关于javascript - 如何在 firebase 中获取对象的先前值(值)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38325022/