firebase - Firebase/Cloud 功能不会在实时数据库删除时触发事件
问题描述
我正在尝试使用以下方法监听子集合上的删除:
'use strict';
const functions = require('firebase-functions');
const admin = require('firebase-admin');
admin.initializeApp();
console.log('listen for delete');
exports.sendActivityChangeNotification = functions.database.ref('/games/{gameId}/attendees/{attdendeeId}')
.onDelete(async (change, context) => {
const gameId = context.params.gameId;
const attdendeeId = context.params.attdendeeId;
console.log(`activityId ${activityId} attdendeeId ${attdendeeId}` );
}
在路径 '/games/{gameId}/attendees/{attdendeeId}' 中,games 是父集合,gameId 是文档,而参加者是我想要在删除文档时收听的集合。
这甚至可能吗?这是我第一次使用函数。我确实确保使用部署函数后存在的新数据进行测试。
感谢您的任何建议!
解决方案
您的代码访问实时数据库,但您使用了 Firestore 术语“集合”和“文档”。
实时数据库和 Cloud Firestore 是完全不同的产品。确保为正在使用的数据库编写正确类型的触发器。如果您使用 Firestore,请编写 Firestore 触发器。
推荐阅读
- google-analytics - 使用 Google Analytics 时,您是否必须为您的网站编制索引?
- javascript - 如何在 moment.js 中更改语言环境
- javascript - 如何为字符串的特定部分添加 HTML 标记(javascript)
- html - CSS:在 div 后面居中视频而不影响整体 div 布局?
- java - 地图
在 java 中的 @ConfigurationProperties 的 yaml 文件中? - reactjs - 下一个 JS 有条件地 getStaticProps
- javascript - 水平对齐 react.js 中的组件列表
- firebase - AngularFireModule 尚未使用 v7.0.1 和初始化 firebase 应用程序的新方法提供
- reactjs - 如何将垂直滚动应用于材质ui ListItem
- java - \n(新行)无法创建文本文件