Javascript 占位符只能用于Firebase中的数据库事件而不能用于查询吗?
看看下面的JSON结构:Javascript 占位符只能用于Firebase中的数据库事件而不能用于查询吗?,javascript,node.js,firebase,firebase-realtime-database,Javascript,Node.js,Firebase,Firebase Realtime Database,看看下面的JSON结构: "Fund_Project_Request" : { "-LEEy7uxXEeI4AJuePoB" : { "4ZpTt0rHvjYfKAnCukIlhGpH6kz2" : { "afds1234" : 2, "asdf12" : 2 }, "iRfNzDSjFiOADqn3KsG8nNuZEfp2" : { "afds1234" : 1 } } },
"Fund_Project_Request" : {
"-LEEy7uxXEeI4AJuePoB" : {
"4ZpTt0rHvjYfKAnCukIlhGpH6kz2" : {
"afds1234" : 2,
"asdf12" : 2
},
"iRfNzDSjFiOADqn3KsG8nNuZEfp2" : {
"afds1234" : 1
}
}
},
在这里,如果我想获取值“afds1234”或“asdf12”,我将在onWrite函数中将其称为“奖励ID”,我所要做的就是:
exports.manipulateRewards = functions.database.ref('/Fund_Project_Request/{ArtcallID}/{UserID}/{rewardID}').onWrite((change, context) => {
const reward_id = context.params.rewardID;
});
假设我想在不使用onWrite函数的情况下获得这些奖励ID字符串。我是否可以使用singleValueEventListener或任何其他查询方法来执行此操作 在编写查询实时数据库的代码时,没有通配符。您必须知道您感兴趣的数据的确切路径
云函数触发器实际上与普通侦听器不同。它们本质上是过滤流经系统的所有写入,并且只在与给定路径匹配的写入上触发。您不必查询它。在传递给
onWrite
callback handler函数的change
对象中,可以找到数据库中已更改位置的值。感谢您的回复!我的问题是,如果我不想使用onWrite函数,而想通过使用侦听器获取这些值,该怎么办?我不明白。如果您不想使用云函数,为什么要显示其代码?你到底想在这里完成什么?我现在编辑了我的问题。我希望这更清楚。我仍然不清楚你的目标是什么。你想让你的函数做点什么吗?