dis*_*gra 2 javascript firebase firebase-realtime-database google-cloud-functions
我正在尝试获取js firebase中父节点的子节点数.我想:
'user': {
'-Yuna99s993m': { count: 1},
'-Yada99s993m': { count: 2},
}
Run Code Online (Sandbox Code Playgroud)
我正在创建一个云函数巫婆每次输入一个新节点时,它应该添加等于用户节点的numChildren的计数.
exports.setCount = functions.database.ref('/user/{userId}').onWrite(event => {
// This doesn't work
const count = event.data.ref.parent.numChildren();
return event.data.ref.update({ count });
});
Run Code Online (Sandbox Code Playgroud)
有什么帮助让这个工作?
谢谢.
调用event.data.ref.parent.numChildren()不起作用,因为定义parent了DatabaseReference一段numChildren()时间DataSnapshot(通过将一个监听器附加到引用来获得):
exports.setCount = functions.database.ref('/user/{userId}').onWrite(event => {
return event.data.ref.parent.once("value", (snapshot) => {
const count = snapshot.numChildren();
return event.data.ref.update({ count });
});
})
Run Code Online (Sandbox Code Playgroud)
函数child-count示例中还有一个示例 Github repo,它可以完全满足您的需求:保持子项数的计数器.该示例使用更有效的方法来保持计数.
| 归档时间: |
|
| 查看次数: |
7140 次 |
| 最近记录: |