我想更新某个键下的值而不使用复制/粘贴键值的“天真”方式。因为我希望它可以扩展到任何客户端。
我基本上想要更新,点击“编辑”属性为“true”。
我目前的方法:
var query= db.ref('Clients/AgenceEco/forms/step1/');
query.update({
edit: true
})
问题是它实际上在“step1”下添加了一个edit属性,如下所示:
我显然不希望这样,但想要更新firebase的随机生成密钥下的值。
你会如何解决这个问题?感谢
答案 0 :(得分:1)
我认为你可以这样做:
var updates = {};
updates['Clients/AgenceEco/forms/step1/edit'] = true;
db.ref().update(updates);
https://firebase.google.com/docs/database/admin/save-data#section-update
编辑:关于你的评论,你可以这样做(但我认为可能有一种更简单的方法):
var ref = 'Clients/AgenceEco/forms/step1';
firebase.database().ref(ref).once('value', function(snapshot) {
var data = snapshot.val();
if (data) {
data.edit = true;
firebase.database().ref(ref).update(data);
}
}
答案 1 :(得分:0)
只是在孩子身上做,而不是直接做第1步。使用child
方法:
var query= db.ref('Clients/AgenceEco/forms/step1/')
query.child().update({
edit: true
})