gpt4 book ai didi

javascript - Firebase 的云功能 : How do I trigger a database function for a specific child key of all children

转载 作者:行者123 更新时间:2023-11-30 11:30:13 27 4
gpt4 key购买 nike

假设我的数据库如下所示:

project
└── users
├── safuhf8sdf76fs
│ ├── name: 'William'
│ └── favoriteColor: 'blue'
├── sffuef5srf72fd
│ ├── name: 'Emily'
│ └── favoriteColor: 'yellow'
└── rfdu4ffsgf42gi
├── name: 'Sam'
└── favoriteColor: 'red'

我正在尝试创建一个 Cloud Function,它会在任何 user 对象的 favoriteColor 值更改/添加/删除时触发。

我遇到问题的部分是创建对所述 key 的引用。

我知道我可以听取用户的任何和所有更改

exports.updatedFavoriteColor = functions.database.ref('/users').onWrite(event => { ... });

然后检查更改的数据是否为 ​​favoriteColor

虽然这可行,但我更喜欢一个专门监听所有用户对象的favoriteColor键的触发器——类似这样的东西:functions.database.ref('/users').child(?).child('favoriteColor')

例如,当 William 或 Emily 的 favoriteColor 发生变化时,我的首选函数将被调用,但当 Sam 的 name 发生变化时则不会。这可能吗?

最佳答案

我想我通过更多的挖掘找到了答案。

Firebase docs建议我可以执行以下操作:

exports.updatedFavoriteColor = functions.database.ref('/users/{pushId}/favoriteColor').onWrite(event => { ... });

这应该由任何用户的 favoriteColor 更改触发,其中正在更新的特定用户由引用中的 {pushId} 表示。在函数本身中,您可以使用 event.params.pushId

引用用户 ID

关于javascript - Firebase 的云功能 : How do I trigger a database function for a specific child key of all children,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46518425/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com