firebase的云功能 - 删除或添加的数据

时间:2017-06-05 12:51:22

标签: javascript node.js firebase firebase-realtime-database google-cloud-functions

我想区分已删除和首次创建的数据。 我正在使用Firebase中的代码:

if (event.data.previous.exists()) {
    return;
  }
  // Exit when the data is deleted.
  if (!event.data.exists()) {
    return;
  }

然而,它不起作用。我正在收听数据库,其结构如下:

  • 正在使用中
    • fruitID
    • id:fruitID

我想在删除数据时使用代码,在创建数据时使用其他代码,因此在添加水果时。

仅使用给定代码

中的部分
if (event.data.previous.exists()){
}
执行

并且在数据被删除时始终执行。

有什么建议吗?

感谢。

1 个答案:

答案 0 :(得分:1)

云功能具有可用于此特定工作流程的新触发器。

  

onCreate(),它在实时数据库中创建,销毁或更改数据时触发。

     

onUpdate(),在实时数据库中创建新数据时触发。

     

onDelete(),在实时数据库中更新数据时触发。

     

onDelete,在从实时数据库中删除数据时触发。

您可以创建两个触发器,onCreateonWrite

否则,如果您想在一个函数中创建它,可以使用export listener = functions.database.ref('/fruit/{fruitId}').onWrite(event => { if (!event.data.previous.exists()) { // Created Event - Previous data doesn't exist. } else if (!event.data.exists()) { // Deleted Event - Data doesn't exist. } else { // Update } }

设置一个函数
INSERT