示例代码如下所示:
Firebase Database
name: Sonich
when changed value
name: Sonita
FirebaseRef.on('value', function(snapshot) {
var previous_name= ?;//Sonich
var new_name = snapshot.val(); //Sonita
});
答案 0 :(得分:1)
我想你想要在节点发生变化时检索它的前一个值。
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
});