Javascript 如何使用firebase更新集合中的多个记录?
我有此功能,以便在文章中更新用户用户名:Javascript 如何使用firebase更新集合中的多个记录?,javascript,reactjs,firebase,firebase-realtime-database,Javascript,Reactjs,Firebase,Firebase Realtime Database,我有此功能,以便在文章中更新用户用户名: let postsRef = firebase.database().ref('posts/'); postsRef.child('username').update({'username': "josh2"}) 问题是post在一个键下,如下所示: posts | ---- -MOFidfjdUSJFDJ | ----- username: josh (username) |
let postsRef = firebase.database().ref('posts/');
postsRef.child('username').update({'username': "josh2"})
问题是post在一个键下,如下所示:
posts
|
---- -MOFidfjdUSJFDJ
|
----- username: josh (username)
|
----- text: some text 1
|
---- -MOFifdjfhd
|
----- username: josh (username)
|
----- text: some text 2
---- -MOjfdjsiJidJ
|
----- username: marie (username)
|
----- text: some text
我想将用户名为josh
的任何帖子更新为josh2
。我该怎么做?
非常感谢。您可以执行以下操作:
var postRef = firebase.database().ref('posts').orderByChild("username").equalTo("josh");
postRef.on('value', ((snapshot) {
snapshot.forEach((subChild) => {
firebase.database().ref('posts').child(subChild.key).update({"username" :"josh2"});
});
});
因此,在这里,您创建一个查询来检查username是否等于josh,然后检索此用户的所有帖子,然后使用key
属性可以获取帖子密钥并进行更新